Metamodel
Metalastic Metamodel types Hierarchy
Sealed class for all metamodel types in the DSL. Provides path traversal functionality for nested field access. Using sealed class ensures exhaustive pattern matching and type safety.
sealed class Metamodel<T>
├── sealed class Field<T> : Metamodel<T>
│ ├── class AliasField<T> : Field<T>
│ ├── class AnnotatedTextField<T> : Field<T>
│ ├── class AutoField<T> : Field<T>
│ ├── class BinaryField<T> : Field<T>
│ ├── class BooleanField<T> : Field<T>
│ ├── class ByteField<T> : Field<T>
│ ├── class CompletionField<T> : Field<T>
│ ├── class ConstantKeywordField<T> : Field<T>
│ ├── class DateField<T> : Field<T>
│ ├── class DateNanosField<T> : Field<T>
│ ├── class DateRangeField<T> : Field<T>
│ ├── class DenseVectorField<T> : Field<T>
│ ├── class DoubleField<T> : Field<T>
│ ├── class DoubleRangeField<T> : Field<T>
│ ├── class FlattenedField<T> : Field<T>
│ ├── class FloatField<T> : Field<T>
│ ├── class FloatRangeField<T> : Field<T>
│ ├── class HalfFloatField<T> : Field<T>
│ ├── class IntegerField<T> : Field<T>
│ ├── class IntegerRangeField<T> : Field<T>
│ ├── class IpField<T> : Field<T>
│ ├── class IpRangeField<T> : Field<T>
│ ├── class KeywordField<T> : Field<T>
│ ├── class LongField<T> : Field<T>
│ ├── class LongRangeField<T> : Field<T>
│ ├── class MatchOnlyTextField<T> : Field<T>
│ ├── class Murmur3Field<T> : Field<T>
│ ├── class PercolatorField<T> : Field<T>
│ ├── class PointField<T> : Field<T>
│ ├── class RankFeatureField<T> : Field<T>
│ ├── class RankFeaturesField<T> : Field<T>
│ ├── class ScaledFloatField<T> : Field<T>
│ ├── class SearchAsYouTypeField<T> : Field<T>
│ ├── class ShapeField<T> : Field<T>
│ ├── class ShortField<T> : Field<T>
│ ├── class TextField<T> : Field<T>
│ ├── class TokenCountField<T> : Field<T>
│ ├── class VersionField<T> : Field<T>
│ └── class WildcardField<T> : Field<T>
│
└── abstract class Container<T> : Metamodel<T>
├── abstract class MultiField<T, M> : Container<T>
└── abstract class ObjectField<T> : Container<T>
└── abstract class Document<T> : ObjectField<T>Content copied to clipboard
Type Parameters
T
type of property this metamodel represents
Inheritors
Functions
Link copied to clipboard
Returns the KClass for this field's type, or null if the type is not a concrete class (e.g., if it's a type parameter or complex type intersection).
Link copied to clipboard
Returns true if any ancestor container is marked as nested in Elasticsearch.
Link copied to clipboard
Returns the paths of the ancestor containers that are marked as nested, closest first.