pub enum NamedTypeFragment {
Record(RecordTypeFragment),
Enum(EnumTypeFragment),
Newtype {
source_key: TypeSourceKey,
name: SchemaName,
inner: FieldType,
},
List {
source_key: TypeSourceKey,
name: SchemaName,
item: FieldType,
},
Set {
source_key: TypeSourceKey,
name: SchemaName,
item: FieldType,
},
Map {
source_key: TypeSourceKey,
name: SchemaName,
key: FieldType,
value: FieldType,
},
Tuple {
source_key: TypeSourceKey,
name: SchemaName,
members: Vec<TupleElementFragment>,
},
}Expand description
Named reusable type definition.
Variants§
Record(RecordTypeFragment)
Record type.
Enum(EnumTypeFragment)
Enum type.
Newtype
Transparent named wrapper.
Fields
source_key: TypeSourceKeyTyped proposal key derived from the current name.
name: SchemaNameCurrent schema name.
List
Homogeneous ordered collection.
Fields
source_key: TypeSourceKeyTyped proposal key derived from the current name.
name: SchemaNameCurrent schema name.
Set
Homogeneous unique collection.
Fields
source_key: TypeSourceKeyTyped proposal key derived from the current name.
name: SchemaNameCurrent schema name.
Map
Homogeneous key/value collection.
Fields
source_key: TypeSourceKeyTyped proposal key derived from the current name.
name: SchemaNameCurrent schema name.
Tuple
Ordered heterogeneous product.
Fields
source_key: TypeSourceKeyTyped proposal key derived from the current name.
name: SchemaNameCurrent schema name.
members: Vec<TupleElementFragment>Ordered member types.
Implementations§
Source§impl NamedTypeFragment
impl NamedTypeFragment
Sourcepub fn newtype(name: SchemaName, inner: FieldType) -> Self
pub fn newtype(name: SchemaName, inner: FieldType) -> Self
Construct one transparent named wrapper from its current name.
Sourcepub fn list(name: SchemaName, item: FieldType) -> Self
pub fn list(name: SchemaName, item: FieldType) -> Self
Construct one named ordered collection from its current name.
Sourcepub fn set(name: SchemaName, item: FieldType) -> Self
pub fn set(name: SchemaName, item: FieldType) -> Self
Construct one named unique collection from its current name.
Sourcepub fn map(name: SchemaName, key: FieldType, value: FieldType) -> Self
pub fn map(name: SchemaName, key: FieldType, value: FieldType) -> Self
Construct one named key/value collection from its current name.
Sourcepub fn tuple(name: SchemaName, members: Vec<TupleElementFragment>) -> Self
pub fn tuple(name: SchemaName, members: Vec<TupleElementFragment>) -> Self
Construct one named heterogeneous product from its current name.
Sourcepub const fn source_key(&self) -> &TypeSourceKey
pub const fn source_key(&self) -> &TypeSourceKey
Borrow the typed proposal key derived from the current type name.
Sourcepub const fn name(&self) -> &SchemaName
pub const fn name(&self) -> &SchemaName
Borrow the current type name.
Trait Implementations§
Source§impl Clone for NamedTypeFragment
impl Clone for NamedTypeFragment
Source§fn clone(&self) -> NamedTypeFragment
fn clone(&self) -> NamedTypeFragment
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more