#[non_exhaustive]pub struct PropertyLayerDescriptor<Id, I>where
I: PropertyIndex,{
pub layer_id: LayerId<Id>,
pub name: LayerName,
pub id_family: IdFamily,
pub role: LayerRole,
pub storage: StorageMode,
pub arrow_field: Field,
/* private fields */
}Expand description
Descriptor for one Arrow-backed property layer.
§Performance
Cloning is O(name.len() + arrow field clone cost).
Fields (Non-exhaustive)§
This struct is marked as non-exhaustive
Non-exhaustive structs could have additional fields added in future. Therefore, non-exhaustive structs cannot be constructed in external crates using the traditional
Struct { .. } syntax; cannot be matched against without a wildcard ..; and struct update syntax will not work.layer_id: LayerId<Id>Stable layer identifier.
name: LayerNameHuman-facing layer name.
id_family: IdFamilyTopology ID family keyed by this layer.
role: LayerRoleDeclared layer role.
storage: StorageModePhysical storage mode.
arrow_field: FieldArrow schema field for stored values.
Implementations§
Source§impl<Id, I> PropertyLayerDescriptor<Id, I>where
I: PropertyIndex,
impl<Id, I> PropertyLayerDescriptor<Id, I>where
I: PropertyIndex,
Sourcepub fn try_new(
layer_id: LayerId<Id>,
name: &str,
id_family: IdFamily,
role: LayerRole,
storage: StorageMode,
arrow_field: Field,
) -> Result<Self, PropertyError>
pub fn try_new( layer_id: LayerId<Id>, name: &str, id_family: IdFamily, role: LayerRole, storage: StorageMode, arrow_field: Field, ) -> Result<Self, PropertyError>
Constructs a descriptor and validates the layer name.
§Errors
Returns PropertyError::EmptyLayerName when name is empty.
§Performance
This function is O(name.len()) plus Arrow field move cost.
Trait Implementations§
Source§impl<Id: Clone, I> Clone for PropertyLayerDescriptor<Id, I>where
I: PropertyIndex + Clone,
impl<Id: Clone, I> Clone for PropertyLayerDescriptor<Id, I>where
I: PropertyIndex + Clone,
Source§fn clone(&self) -> PropertyLayerDescriptor<Id, I>
fn clone(&self) -> PropertyLayerDescriptor<Id, I>
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl<Id: Debug, I> Debug for PropertyLayerDescriptor<Id, I>where
I: PropertyIndex + Debug,
impl<Id: Debug, I> Debug for PropertyLayerDescriptor<Id, I>where
I: PropertyIndex + Debug,
Source§impl<Id: PartialEq, I> PartialEq for PropertyLayerDescriptor<Id, I>where
I: PropertyIndex + PartialEq,
impl<Id: PartialEq, I> PartialEq for PropertyLayerDescriptor<Id, I>where
I: PropertyIndex + PartialEq,
Source§fn eq(&self, other: &PropertyLayerDescriptor<Id, I>) -> bool
fn eq(&self, other: &PropertyLayerDescriptor<Id, I>) -> bool
Tests for
self and other values to be equal, and is used by ==.impl<Id, I> StructuralPartialEq for PropertyLayerDescriptor<Id, I>where
I: PropertyIndex,
Auto Trait Implementations§
impl<Id, I> Freeze for PropertyLayerDescriptor<Id, I>where
Id: Freeze,
impl<Id, I> RefUnwindSafe for PropertyLayerDescriptor<Id, I>where
Id: RefUnwindSafe,
I: RefUnwindSafe,
impl<Id, I> Send for PropertyLayerDescriptor<Id, I>
impl<Id, I> Sync for PropertyLayerDescriptor<Id, I>
impl<Id, I> Unpin for PropertyLayerDescriptor<Id, I>
impl<Id, I> UnsafeUnpin for PropertyLayerDescriptor<Id, I>where
Id: UnsafeUnpin,
impl<Id, I> UnwindSafe for PropertyLayerDescriptor<Id, I>where
Id: UnwindSafe,
I: UnwindSafe,
Blanket Implementations§
impl<T> Allocation for T
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more