pub enum FieldKind {
Show 26 variants
Account,
Blob,
Bool,
Date,
Decimal {
scale: u32,
},
Duration,
Enum {
path: &'static str,
},
Float32,
Float64,
Int,
Int128,
IntBig,
Principal,
Subaccount,
Text,
Timestamp,
Uint,
Uint128,
UintBig,
Ulid,
Unit,
Relation {
target_path: &'static str,
target_entity_name: &'static str,
target_store_path: &'static str,
key_kind: &'static Self,
strength: RelationStrength,
},
List(&'static Self),
Set(&'static Self),
Map {
key: &'static Self,
value: &'static Self,
},
Structured {
queryable: bool,
},
}Expand description
FieldKind
Minimal runtime type surface needed by planning, validation, and execution.
This is aligned with Value variants and intentionally lossy: it encodes
only the shape required for predicate compatibility and index planning.
Variants§
Account
Blob
Bool
Date
Decimal
Duration
Enum
Float32
Float64
Int
Int128
IntBig
Principal
Subaccount
Text
Timestamp
Uint
Uint128
UintBig
Ulid
Unit
Relation
Typed relation; key_kind reflects the referenced key type.
strength encodes strong vs. weak relation intent.
List(&'static Self)
Set(&'static Self)
Map
Deterministic, unordered key/value collection.
Map fields are persistable and patchable, but not queryable or indexable.
Structured
Structured (non-atomic) value. Queryability here controls whether predicates may target this field, not whether it may be stored or updated.
Implementations§
Source§impl FieldKind
impl FieldKind
pub const fn value_kind(&self) -> FieldValueKind
Sourcepub const fn is_deterministic_collection_shape(&self) -> bool
pub const fn is_deterministic_collection_shape(&self) -> bool
Returns true if this field shape is permitted in
persisted or query-visible schemas under the current
determinism policy.
This shape-level check is structural only; query-time policy enforcement (for example, map predicate fencing) is applied at query construction and validation boundaries.