pub struct FactPath {
pub segments: Vec<PathSegment>,
pub fact: String,
}Expand description
A resolved path to a fact, with document traversal segments
Used after planning to represent fully resolved fact references. Public because used in ExecutionPlan and evaluation.
Fields§
§segments: Vec<PathSegment>Path segments: each segment is a fact name that points to a document
fact: StringFinal fact name
Implementations§
Source§impl FactPath
impl FactPath
Sourcepub fn new(segments: Vec<PathSegment>, fact: String) -> Self
pub fn new(segments: Vec<PathSegment>, fact: String) -> Self
Create a new FactPath from segments and fact name
Trait Implementations§
Source§impl<'de> Deserialize<'de> for FactPath
impl<'de> Deserialize<'de> for FactPath
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
impl Eq for FactPath
impl StructuralPartialEq for FactPath
Auto Trait Implementations§
impl Freeze for FactPath
impl RefUnwindSafe for FactPath
impl Send for FactPath
impl Sync for FactPath
impl Unpin for FactPath
impl UnwindSafe for FactPath
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
Mutably borrows from an owned value. Read more
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§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
Compare self to
key and return true if they are equal.Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more