pub struct TreeMapper<TOutput, TNoopMapper: Mapper<Noop, TOutput>, TSeqMapper: Mapper<Seq, TOutput>, TConcMapper: Mapper<Conc, TOutput>, TMoveToMapper: Mapper<MoveTo, TOutput>, TSearchAreaMapper: Mapper<SearchArea, TOutput>> { /* private fields */ }
Expand description
Implementation of mapping for a tree
Implementations§
Source§impl<TMoveToMapper, TSearchAreaMapper> TreeMapper<Node, IdentityMapper, CompositeNodeMapper<Node, TransformerAccumulator<Seq>>, CompositeNodeMapper<Node, TransformerAccumulator<Conc>>, TMoveToMapper, TSearchAreaMapper>
impl<TMoveToMapper, TSearchAreaMapper> TreeMapper<Node, IdentityMapper, CompositeNodeMapper<Node, TransformerAccumulator<Seq>>, CompositeNodeMapper<Node, TransformerAccumulator<Conc>>, TMoveToMapper, TSearchAreaMapper>
Trait Implementations§
Source§impl<TOutput, TNoopMapper, TSeqMapper, TConcMapper, TMoveToMapper, TSearchAreaMapper> Default for TreeMapper<TOutput, TNoopMapper, TSeqMapper, TConcMapper, TMoveToMapper, TSearchAreaMapper>
impl<TOutput, TNoopMapper, TSeqMapper, TConcMapper, TMoveToMapper, TSearchAreaMapper> Default for TreeMapper<TOutput, TNoopMapper, TSeqMapper, TConcMapper, TMoveToMapper, TSearchAreaMapper>
Source§impl<TOutput, TNoopMapper, TSeqMapper, TConcMapper, TMoveToMapper, TSearchAreaMapper> Mappers for TreeMapper<TOutput, TNoopMapper, TSeqMapper, TConcMapper, TMoveToMapper, TSearchAreaMapper>
impl<TOutput, TNoopMapper, TSeqMapper, TConcMapper, TMoveToMapper, TSearchAreaMapper> Mappers for TreeMapper<TOutput, TNoopMapper, TSeqMapper, TConcMapper, TMoveToMapper, TSearchAreaMapper>
Source§fn map_noop<'a>(&'a self, tst_node: Noop) -> BoxFuture<'a, Result<Self::Output>>
fn map_noop<'a>(&'a self, tst_node: Noop) -> BoxFuture<'a, Result<Self::Output>>
Map a noop node
Source§fn map_seq<'a>(&'a self, tst_node: Seq) -> BoxFuture<'a, Result<Self::Output>>
fn map_seq<'a>(&'a self, tst_node: Seq) -> BoxFuture<'a, Result<Self::Output>>
Map a sequential node
Source§fn map_conc<'a>(&'a self, tst_node: Conc) -> BoxFuture<'a, Result<Self::Output>>
fn map_conc<'a>(&'a self, tst_node: Conc) -> BoxFuture<'a, Result<Self::Output>>
Map a concurrent node
Source§fn map_move_to<'a>(
&'a self,
tst_node: MoveTo,
) -> BoxFuture<'a, Result<Self::Output>>
fn map_move_to<'a>( &'a self, tst_node: MoveTo, ) -> BoxFuture<'a, Result<Self::Output>>
Map a move to node
Source§fn map_search_area<'a>(
&'a self,
tst_node: SearchArea,
) -> BoxFuture<'a, Result<Self::Output>>
fn map_search_area<'a>( &'a self, tst_node: SearchArea, ) -> BoxFuture<'a, Result<Self::Output>>
Map a search area node
Source§impl<TOutput, TNoopMapper, TSeqMapper, TConcMapper, TMoveToMapper, TSearchAreaMapper> TreeMapperTrait<TOutput> for TreeMapper<TOutput, TNoopMapper, TSeqMapper, TConcMapper, TMoveToMapper, TSearchAreaMapper>
impl<TOutput, TNoopMapper, TSeqMapper, TConcMapper, TMoveToMapper, TSearchAreaMapper> TreeMapperTrait<TOutput> for TreeMapper<TOutput, TNoopMapper, TSeqMapper, TConcMapper, TMoveToMapper, TSearchAreaMapper>
Source§type ConcMapper = TConcMapper
type ConcMapper = TConcMapper
Mapper for concurrent nodes
Source§type MoveToMapper = TMoveToMapper
type MoveToMapper = TMoveToMapper
Mapper for move_to nodes
Source§type SearchAreaMapper = TSearchAreaMapper
type SearchAreaMapper = TSearchAreaMapper
Mapper for search area nodes
Source§fn map_direct(&self, t: Node) -> Result<TOutput>
fn map_direct(&self, t: Node) -> Result<TOutput>
Map the tst and block
Auto Trait Implementations§
impl<TOutput, TNoopMapper, TSeqMapper, TConcMapper, TMoveToMapper, TSearchAreaMapper> Freeze for TreeMapper<TOutput, TNoopMapper, TSeqMapper, TConcMapper, TMoveToMapper, TSearchAreaMapper>
impl<TOutput, TNoopMapper, TSeqMapper, TConcMapper, TMoveToMapper, TSearchAreaMapper> RefUnwindSafe for TreeMapper<TOutput, TNoopMapper, TSeqMapper, TConcMapper, TMoveToMapper, TSearchAreaMapper>where
TNoopMapper: RefUnwindSafe,
TSeqMapper: RefUnwindSafe,
TConcMapper: RefUnwindSafe,
TMoveToMapper: RefUnwindSafe,
TSearchAreaMapper: RefUnwindSafe,
impl<TOutput, TNoopMapper, TSeqMapper, TConcMapper, TMoveToMapper, TSearchAreaMapper> Send for TreeMapper<TOutput, TNoopMapper, TSeqMapper, TConcMapper, TMoveToMapper, TSearchAreaMapper>
impl<TOutput, TNoopMapper, TSeqMapper, TConcMapper, TMoveToMapper, TSearchAreaMapper> Sync for TreeMapper<TOutput, TNoopMapper, TSeqMapper, TConcMapper, TMoveToMapper, TSearchAreaMapper>
impl<TOutput, TNoopMapper, TSeqMapper, TConcMapper, TMoveToMapper, TSearchAreaMapper> Unpin for TreeMapper<TOutput, TNoopMapper, TSeqMapper, TConcMapper, TMoveToMapper, TSearchAreaMapper>
impl<TOutput, TNoopMapper, TSeqMapper, TConcMapper, TMoveToMapper, TSearchAreaMapper> UnwindSafe for TreeMapper<TOutput, TNoopMapper, TSeqMapper, TConcMapper, TMoveToMapper, TSearchAreaMapper>where
TNoopMapper: UnwindSafe,
TSeqMapper: UnwindSafe,
TConcMapper: UnwindSafe,
TMoveToMapper: UnwindSafe,
TSearchAreaMapper: UnwindSafe,
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> 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