[go: up one dir, main page]

Trait NestedTypeNodeTrait

Source
pub trait NestedTypeNodeTrait<T>:
    Debug
    + PartialEq
    + Clone
    + Serialize
    + for<'de> Deserialize<'de>
where T: TypeNodeTrait,
{ type Mapped<U: TypeNodeTrait>: NestedTypeNodeTrait<U>; // Required methods fn get_nested_type_node(&self) -> &T; fn try_map_nested_type_node<U, F>( self, f: F, ) -> Result<Self::Mapped<U>, CodamaError> where U: TypeNodeTrait, F: FnOnce(T) -> Result<U, CodamaError>; // Provided method fn map_nested_type_node<U, F>(self, f: F) -> Self::Mapped<U> where U: TypeNodeTrait, F: FnOnce(T) -> U { ... } }

Required Associated Types§

Required Methods§

Source

fn get_nested_type_node(&self) -> &T

Source

fn try_map_nested_type_node<U, F>( self, f: F, ) -> Result<Self::Mapped<U>, CodamaError>
where U: TypeNodeTrait, F: FnOnce(T) -> Result<U, CodamaError>,

Provided Methods§

Source

fn map_nested_type_node<U, F>(self, f: F) -> Self::Mapped<U>
where U: TypeNodeTrait, F: FnOnce(T) -> U,

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.

Implementors§