[][src]Struct syntax::print::pprust::State

pub struct State<'a> {
    pub s: Printer,
    // some fields omitted
}

Fields

s: Printer

Methods

impl<'a> State<'a>[src]

pub fn synth_comment(&mut self, text: String)[src]

Methods from Deref<Target = Printer>

pub fn last_token(&self) -> Token[src]

pub fn replace_last_token(&mut self, t: Token)[src]

Be very careful with this!

pub fn rbox(&mut self, indent: usize, b: Breaks)[src]

"raw box"

pub fn ibox(&mut self, indent: usize)[src]

Inconsistent breaking box

pub fn cbox(&mut self, indent: usize)[src]

Consistent breaking box

pub fn break_offset(&mut self, n: usize, off: isize)[src]

pub fn end(&mut self)[src]

pub fn word<S: Into<Cow<'static, str>>>(&mut self, wrd: S)[src]

pub fn space(&mut self)[src]

pub fn hardbreak(&mut self)[src]

pub fn is_beginning_of_line(&self) -> bool[src]

pub fn word_space<W: Into<Cow<'static, str>>>(&mut self, w: W)[src]

pub fn popen(&mut self)[src]

pub fn pclose(&mut self)[src]

pub fn hardbreak_if_not_bol(&mut self)[src]

pub fn space_if_not_bol(&mut self)[src]

pub fn nbsp(&mut self)[src]

pub fn word_nbsp<S: Into<Cow<'static, str>>>(&mut self, w: S)[src]

Trait Implementations

impl<'a> PrintState<'a> for State<'a>[src]

fn strsep<T, F>(
    &mut self,
    sep: &'static str,
    space_before: bool,
    b: Breaks,
    elts: &[T],
    op: F
) where
    F: FnMut(&mut Self, &T), 
[src]

fn commasep<T, F>(&mut self, b: Breaks, elts: &[T], op: F) where
    F: FnMut(&mut Self, &T), 
[src]

fn maybe_print_comment(&mut self, pos: BytePos)[src]

fn print_comment(&mut self, cmnt: &Comment)[src]

fn next_comment(&mut self) -> Option<Comment>[src]

fn print_literal(&mut self, lit: &Lit)[src]

fn print_string(&mut self, st: &str, style: StrStyle)[src]

fn print_inner_attributes(&mut self, attrs: &[Attribute])[src]

fn print_inner_attributes_no_trailing_hardbreak(&mut self, attrs: &[Attribute])[src]

fn print_outer_attributes(&mut self, attrs: &[Attribute])[src]

fn print_inner_attributes_inline(&mut self, attrs: &[Attribute])[src]

fn print_outer_attributes_inline(&mut self, attrs: &[Attribute])[src]

fn print_either_attributes(
    &mut self,
    attrs: &[Attribute],
    kind: AttrStyle,
    is_inline: bool,
    trailing_hardbreak: bool
)
[src]

fn print_attribute(&mut self, attr: &Attribute)[src]

fn print_attribute_inline(&mut self, attr: &Attribute, is_inline: bool)[src]

fn print_meta_list_item(&mut self, item: &NestedMetaItem)[src]

fn print_meta_item(&mut self, item: &MetaItem)[src]

fn print_tt(&mut self, tt: TokenTree, convert_dollar_crate: bool)[src]

This doesn't deserve to be called "pretty" printing, but it should be meaning-preserving. A quick hack that might help would be to look at the spans embedded in the TTs to decide where to put spaces and newlines. But it'd be better to parse these according to the grammar of the appropriate macro, transcribe back into the grammar we just parsed from, and then pretty-print the resulting AST nodes (so, e.g., we print expression arguments as expressions). It can be done! I think. Read more

fn print_tts(&mut self, tts: TokenStream, convert_dollar_crate: bool)[src]

fn print_mac_common(
    &mut self,
    header: Option<MacHeader>,
    has_bang: bool,
    ident: Option<Ident>,
    delim: DelimToken,
    tts: TokenStream,
    convert_dollar_crate: bool,
    span: Span
)
[src]

fn print_path(&mut self, path: &Path, colons_before_params: bool, depth: usize)[src]

fn print_path_segment(
    &mut self,
    segment: &PathSegment,
    colons_before_params: bool
)
[src]

fn head<S: Into<Cow<'static, str>>>(&mut self, w: S)[src]

fn bopen(&mut self)[src]

fn bclose_maybe_open(&mut self, span: Span, close_box: bool)[src]

fn bclose(&mut self, span: Span)[src]

fn break_offset_if_not_bol(&mut self, n: usize, off: isize)[src]

impl<'_> DerefMut for State<'_>[src]

impl<'_> Deref for State<'_>[src]

type Target = Printer

The resulting type after dereferencing.

Auto Trait Implementations

impl<'a> !Send for State<'a>

impl<'a> Unpin for State<'a>

impl<'a> !Sync for State<'a>

impl<'a> !UnwindSafe for State<'a>

impl<'a> !RefUnwindSafe for State<'a>

Blanket Implementations

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Erased for T[src]

impl<E> SpecializationError for E[src]