pub struct Printer { /* private fields */ }
Available on (crate features
syntax-glob
or syntax-ev
or syntax-regex
) and crate feature syntax-regex
only.Expand description
A printer for a regular expression abstract syntax tree.
A printer converts an abstract syntax tree (AST) to a regular expression pattern string. This particular printer uses constant stack space and heap space proportional to the size of the AST.
This printer will not necessarily preserve the original formatting of the regular expression pattern string. For example, all whitespace and comments are ignored.
Implementations§
Source§impl Printer
impl Printer
Sourcepub fn print<W>(&mut self, ast: &Ast, wtr: W) -> Result<(), Error>where
W: Write,
pub fn print<W>(&mut self, ast: &Ast, wtr: W) -> Result<(), Error>where
W: Write,
Print the given Ast
to the given writer. The writer must implement
fmt::Write
. Typical implementations of fmt::Write
that can be used
here are a fmt::Formatter
(which is available in fmt::Display
implementations) or a &mut String
.
Trait Implementations§
Auto Trait Implementations§
impl Freeze for Printer
impl RefUnwindSafe for Printer
impl Send for Printer
impl Sync for Printer
impl Unpin for Printer
impl UnwindSafe for Printer
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