pub trait TreePath<IdN = NodeIdentifier, Idx = u16> {
    // Required methods
    fn node(&self) -> Option<&IdN>;
    fn offset(&self) -> Option<&Idx>;
    fn check<'store, HAST>(&self, stores: &'store HAST) -> Result<(), ()>
       where HAST: HyperAST<'store, IdN = IdN::IdN>,
             HAST::T: WithChildren<ChildIdx = Idx>,
             HAST::IdN: Eq,
             IdN: NodeId,
             IdN::IdN: NodeId<IdN = IdN::IdN>;
}

Required Methods§

source

fn node(&self) -> Option<&IdN>

source

fn offset(&self) -> Option<&Idx>

source

fn check<'store, HAST>(&self, stores: &'store HAST) -> Result<(), ()>where HAST: HyperAST<'store, IdN = IdN::IdN>, HAST::T: WithChildren<ChildIdx = Idx>, HAST::IdN: Eq, IdN: NodeId, IdN::IdN: NodeId<IdN = IdN::IdN>,

Implementors§

source§

impl<IdN: Eq + Copy, Idx: PrimInt> TreePath<IdN, Idx> for Scout<IdN, Idx>

source§

impl<IdN: Copy, Idx: PrimInt> TreePath<IdN, Idx> for StructuralPosition<IdN, Idx>

source§

impl<TIdN: TypedNodeId, Idx: PrimInt> TreePath<<TIdN as NodeId>::IdN, Idx> for TypedScout<TIdN, Idx>where TIdN::IdN: Copy,