Trait AstToStr

Source
pub trait AstToStr {
    // Required method
    fn ast_to_str_impl(&self, s: &dyn Symbols) -> String;

    // Provided method
    fn ast_to_str(&self) -> String { ... }
}
Expand description

A trait for printing ASTs in a pretty manner.

Required Methods§

Source

fn ast_to_str_impl(&self, s: &dyn Symbols) -> String

This method should serialize the struct or enum recursively, returning a tree.

Provided Methods§

Source

fn ast_to_str(&self) -> String

This method is auto-implemented to call ast_to_str_impl with DefaultSymbols.

Trait Implementations§

Source§

impl Display for dyn AstToStr

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more

Implementations on Foreign Types§

Source§

impl<'a> AstToStr for &'a str

Source§

fn ast_to_str_impl(&self, _: &dyn Symbols) -> String

Source§

impl<'a> AstToStr for Cow<'a, str>

Source§

fn ast_to_str_impl(&self, _: &dyn Symbols) -> String

Source§

impl<'a> AstToStr for bool

Source§

fn ast_to_str_impl(&self, _: &dyn Symbols) -> String

Source§

impl<'a> AstToStr for f32

Source§

fn ast_to_str_impl(&self, _: &dyn Symbols) -> String

Source§

impl<'a> AstToStr for f64

Source§

fn ast_to_str_impl(&self, _: &dyn Symbols) -> String

Source§

impl<'a> AstToStr for i8

Source§

fn ast_to_str_impl(&self, _: &dyn Symbols) -> String

Source§

impl<'a> AstToStr for i16

Source§

fn ast_to_str_impl(&self, _: &dyn Symbols) -> String

Source§

impl<'a> AstToStr for i32

Source§

fn ast_to_str_impl(&self, _: &dyn Symbols) -> String

Source§

impl<'a> AstToStr for i64

Source§

fn ast_to_str_impl(&self, _: &dyn Symbols) -> String

Source§

impl<'a> AstToStr for i128

Source§

fn ast_to_str_impl(&self, _: &dyn Symbols) -> String

Source§

impl<'a> AstToStr for isize

Source§

fn ast_to_str_impl(&self, _: &dyn Symbols) -> String

Source§

impl<'a> AstToStr for str

Source§

fn ast_to_str_impl(&self, _: &dyn Symbols) -> String

Source§

impl<'a> AstToStr for u8

Source§

fn ast_to_str_impl(&self, _: &dyn Symbols) -> String

Source§

impl<'a> AstToStr for u16

Source§

fn ast_to_str_impl(&self, _: &dyn Symbols) -> String

Source§

impl<'a> AstToStr for u32

Source§

fn ast_to_str_impl(&self, _: &dyn Symbols) -> String

Source§

impl<'a> AstToStr for u64

Source§

fn ast_to_str_impl(&self, _: &dyn Symbols) -> String

Source§

impl<'a> AstToStr for u128

Source§

fn ast_to_str_impl(&self, _: &dyn Symbols) -> String

Source§

impl<'a> AstToStr for ()

Source§

fn ast_to_str_impl(&self, _: &dyn Symbols) -> String

Source§

impl<'a> AstToStr for usize

Source§

fn ast_to_str_impl(&self, _: &dyn Symbols) -> String

Source§

impl<'a> AstToStr for String

Source§

fn ast_to_str_impl(&self, _: &dyn Symbols) -> String

Source§

impl<A: AstToStr, B: AstToStr> AstToStr for (A, B)

Source§

fn ast_to_str_impl(&self, s: &dyn Symbols) -> String

Source§

impl<A: AstToStr, B: AstToStr, C: AstToStr> AstToStr for (A, B, C)

Source§

fn ast_to_str_impl(&self, s: &dyn Symbols) -> String

Source§

impl<A: AstToStr, B: AstToStr, C: AstToStr, D: AstToStr> AstToStr for (A, B, C, D)

Source§

fn ast_to_str_impl(&self, s: &dyn Symbols) -> String

Source§

impl<K: AstToStr, S> AstToStr for HashSet<K, S>

Source§

fn ast_to_str_impl(&self, s: &dyn Symbols) -> String

Source§

impl<K: AstToStr, V: AstToStr, S> AstToStr for HashMap<K, V, S>

Source§

fn ast_to_str_impl(&self, s: &dyn Symbols) -> String

Source§

impl<T: Debug> AstToStr for Range<T>

Source§

fn ast_to_str_impl(&self, _: &dyn Symbols) -> String

Source§

impl<T: AstToStr> AstToStr for Option<T>

Source§

fn ast_to_str_impl(&self, s: &dyn Symbols) -> String

Source§

impl<T: AstToStr> AstToStr for Box<T>

Source§

fn ast_to_str_impl(&self, s: &dyn Symbols) -> String

Source§

impl<T: AstToStr> AstToStr for VecDeque<T>

Source§

fn ast_to_str_impl(&self, s: &dyn Symbols) -> String

Source§

impl<T: AstToStr> AstToStr for Rc<T>

Source§

fn ast_to_str_impl(&self, s: &dyn Symbols) -> String

Source§

impl<T: AstToStr> AstToStr for Arc<T>

Source§

fn ast_to_str_impl(&self, s: &dyn Symbols) -> String

Source§

impl<T: AstToStr> AstToStr for Vec<T>

Source§

fn ast_to_str_impl(&self, s: &dyn Symbols) -> String

Source§

impl<V: Copy + AstToStr> AstToStr for Cell<V>

Source§

fn ast_to_str_impl(&self, s: &dyn Symbols) -> String

Source§

impl<V: AstToStr> AstToStr for RefCell<V>

Source§

fn ast_to_str_impl(&self, s: &dyn Symbols) -> String

Implementors§