pub struct ElementEnvelope {
pub tenant_id: Uuid,
pub key: String,
pub created_at: OffsetDateTime,
pub created_by: Subject,
pub updated_at: OffsetDateTime,
pub updated_by: Subject,
pub deleted_at: Option<OffsetDateTime>,
pub deleted_by: Option<Subject>,
pub graph_revision: GraphRevision,
}Expand description
The gear-assigned half of an element, identical for every node and every edge and described by the API schema rather than by the element’s GTS type – a producer can neither supply nor extend it, and a type registered statically in the types-registry has nothing to put in it.
It is read-only on every write surface: an envelope member a producer sends is ignored rather than rejected, so a document read from the API can be sent back unchanged.
Fields§
§tenant_id: Uuid§key: StringThe element’s key: a node’s producer-supplied node_key, an edge’s
gear-derived edge_key.
created_at: OffsetDateTime§created_by: Subject§updated_at: OffsetDateTime§updated_by: Subject§deleted_at: Option<OffsetDateTime>Soft-delete tombstone; absent on a live element.
deleted_by: Option<Subject>§graph_revision: GraphRevisionThe revision the read that produced this element observed.
Per element rather than per response because the tabular projection
answers inside toolkit_odata::Page, which carries items and cursors
and nothing else – so this is the only place that read path can
report the snapshot it observed (PRD § fr-tabular-projection).
Trait Implementations§
Source§impl Clone for ElementEnvelope
impl Clone for ElementEnvelope
Source§impl Debug for ElementEnvelope
impl Debug for ElementEnvelope
impl Eq for ElementEnvelope
Source§impl PartialEq for ElementEnvelope
impl PartialEq for ElementEnvelope
impl StructuralPartialEq for ElementEnvelope
Auto Trait Implementations§
impl Freeze for ElementEnvelope
impl RefUnwindSafe for ElementEnvelope
impl Send for ElementEnvelope
impl Sync for ElementEnvelope
impl Unpin for ElementEnvelope
impl UnsafeUnpin for ElementEnvelope
impl UnwindSafe for ElementEnvelope
Blanket Implementations§
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key and return true if they are equal.