pub struct GraphObject<'a, 's, D, G> { /* private fields */ }Expand description
A node inside the actual graph owner. Resolution cannot substitute a node from another revision or silently use a newer generation’s definition.
Implementations§
Source§impl<'a, 's, D: Copy + Eq, G: Copy + Eq> GraphObject<'a, 's, D, G>
impl<'a, 's, D: Copy + Eq, G: Copy + Eq> GraphObject<'a, 's, D, G>
Sourcepub fn direct(self) -> Object<'a, 's, D, G>
pub fn direct(self) -> Object<'a, 's, D, G>
Direct value metadata and paid scalar queries use the same object core.
§Panics
Panics if an internally issued graph object loses its owning reading.
Sourcepub fn identity(self) -> (u64, u16)
pub fn identity(self) -> (u64, u16)
Original indirect owner identity, independent of this direct node.
Sourcepub fn resolved(self, operation: &impl Work) -> Result<Option<Self>>
pub fn resolved(self, operation: &impl Work) -> Result<Option<Self>>
Resolves a direct reference using the already completed graph index. No I/O, parsing, fallback generation or retained-cache mutation occurs.
§Panics
Panics if the completed reference-closure index omits an admitted reference.
Sourcepub fn get(self, key: &[u8], operation: &impl Work) -> Result<Option<Self>>
pub fn get(self, key: &[u8], operation: &impl Work) -> Result<Option<Self>>
Selects a dictionary field and resolves its actual original reference.
Sourcepub fn members<'q>(
self,
operation: &'q impl Work,
) -> Option<GraphMembers<'a, 's, 'q, D, G>>where
's: 'q,
pub fn members<'q>(
self,
operation: &'q impl Work,
) -> Option<GraphMembers<'a, 's, 'q, D, G>>where
's: 'q,
Visits direct array members with current admission before every step. Returned objects can be resolved separately through this same graph.