[−][src]Struct rustc_ast_pretty::pprust::state::State

pub struct State<'a> {
    pub s: Printer,
    comments: Option<Comments<'a>>,
    ann: &'a (dyn PpAnn + 'a),
    is_expanded: bool,
    insert_extra_parens: bool,
}

Fields

s: Printercomments: Option<Comments<'a>>ann: &'a (dyn PpAnn + 'a)is_expanded: boolinsert_extra_parens: bool

Implementations

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

pub fn new() -> State<'a>[src]

pub(in pprust) fn without_insert_extra_parens(
) -> State<'a>
[src]

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

pub(crate) fn commasep_cmnt<T, F, G>(
    &mut self,
    b: Breaks,
    elts: &[T],
    op: F,
    get_span: G
) where
    F: FnMut(&mut State<'_>, &T),
    G: FnMut(&T) -> Span, 
[src]

pub(crate) fn commasep_exprs(&mut self, b: Breaks, exprs: &[P<Expr>])[src]

pub fn print_mod(&mut self, _mod: &Mod, attrs: &[Attribute])[src]

pub(crate) fn print_foreign_mod(
    &mut self,
    nmod: &ForeignMod,
    attrs: &[Attribute]
)
[src]

pub fn print_opt_lifetime(&mut self, lifetime: &Option<Lifetime>)[src]

pub fn print_assoc_constraint(&mut self, constraint: &AssocTyConstraint)[src]

pub fn print_generic_arg(&mut self, generic_arg: &GenericArg)[src]

pub fn print_type(&mut self, ty: &Ty)[src]

pub(crate) fn print_foreign_item(&mut self, item: &ForeignItem)[src]

pub(in pprust::state) fn print_item_const(
    &mut self,
    ident: Ident,
    mutbl: Option<Mutability>,
    ty: &Ty,
    body: Option<&Expr>,
    vis: &Visibility,
    defaultness: Defaultness
)
[src]

pub(in pprust::state) fn print_associated_type(
    &mut self,
    ident: Ident,
    generics: &Generics,
    bounds: &GenericBounds,
    ty: Option<&Ty>,
    vis: &Visibility,
    defaultness: Defaultness
)
[src]

pub(crate) fn print_item(&mut self, item: &Item)[src]

Pretty-prints an item.

pub(in pprust::state) fn print_trait_ref(
    &mut self,
    t: &TraitRef
)
[src]

pub(in pprust::state) fn print_formal_generic_params(
    &mut self,
    generic_params: &[GenericParam]
)
[src]

pub(in pprust::state) fn print_poly_trait_ref(
    &mut self,
    t: &PolyTraitRef
)
[src]

pub(crate) fn print_enum_def(
    &mut self,
    enum_definition: &EnumDef,
    generics: &Generics,
    ident: Ident,
    span: Span,
    visibility: &Visibility
)
[src]

pub(crate) fn print_variants(&mut self, variants: &[Variant], span: Span)[src]

pub(crate) fn print_visibility(&mut self, vis: &Visibility)[src]

pub(crate) fn print_defaultness(&mut self, defaultness: Defaultness)[src]

pub(crate) fn print_struct(
    &mut self,
    struct_def: &VariantData,
    generics: &Generics,
    ident: Ident,
    span: Span,
    print_finalizer: bool
)
[src]

pub(crate) fn print_variant(&mut self, v: &Variant)[src]

pub(crate) fn print_assoc_item(&mut self, item: &AssocItem)[src]

pub(crate) fn print_stmt(&mut self, st: &Stmt)[src]

pub(crate) fn print_block(&mut self, blk: &Block)[src]

pub(crate) fn print_block_unclosed_indent(&mut self, blk: &Block)[src]

pub(crate) fn print_block_with_attrs(
    &mut self,
    blk: &Block,
    attrs: &[Attribute]
)
[src]

pub(crate) fn print_block_maybe_unclosed(
    &mut self,
    blk: &Block,
    attrs: &[Attribute],
    close_box: bool
)
[src]

pub(crate) fn print_let(&mut self, pat: &Pat, scrutinee: &Expr)[src]

Print a let pat = scrutinee expression.

pub(in pprust::state) fn print_else(
    &mut self,
    els: Option<&Expr>
)
[src]

pub(crate) fn print_if(
    &mut self,
    test: &Expr,
    blk: &Block,
    elseopt: Option<&Expr>
)
[src]

pub(crate) fn print_mac(&mut self, m: &MacCall)[src]

pub(in pprust::state) fn print_call_post(
    &mut self,
    args: &[P<Expr>]
)
[src]

pub(crate) fn print_expr_maybe_paren(&mut self, expr: &Expr, prec: i8)[src]

pub(crate) fn print_expr_as_cond(&mut self, expr: &Expr)[src]

Prints an expr using syntax that's acceptable in a condition position, such as the cond in if cond { ... }.

pub(in pprust::state) fn cond_needs_par(
    expr: &Expr
) -> bool
[src]

Does expr need parenthesis when printed in a condition position?

pub(in pprust::state) fn print_expr_cond_paren(
    &mut self,
    expr: &Expr,
    needs_par: bool
)
[src]

Prints expr or (expr) when needs_par holds.

pub(in pprust::state) fn print_expr_vec(
    &mut self,
    exprs: &[P<Expr>],
    attrs: &[Attribute]
)
[src]

pub(in pprust::state) fn print_expr_anon_const(
    &mut self,
    expr: &AnonConst,
    attrs: &[Attribute]
)
[src]

pub(in pprust::state) fn print_expr_repeat(
    &mut self,
    element: &Expr,
    count: &AnonConst,
    attrs: &[Attribute]
)
[src]

pub(in pprust::state) fn print_expr_struct(
    &mut self,
    path: &Path,
    fields: &[Field],
    rest: &StructRest,
    attrs: &[Attribute]
)
[src]

pub(in pprust::state) fn print_expr_tup(
    &mut self,
    exprs: &[P<Expr>],
    attrs: &[Attribute]
)
[src]

pub(in pprust::state) fn print_expr_call(
    &mut self,
    func: &Expr,
    args: &[P<Expr>]
)
[src]

pub(in pprust::state) fn print_expr_method_call(
    &mut self,
    segment: &PathSegment,
    args: &[P<Expr>]
)
[src]

pub(in pprust::state) fn print_expr_binary(
    &mut self,
    op: BinOp,
    lhs: &Expr,
    rhs: &Expr
)
[src]

pub(in pprust::state) fn print_expr_unary(
    &mut self,
    op: UnOp,
    expr: &Expr
)
[src]

pub(in pprust::state) fn print_expr_addr_of(
    &mut self,
    kind: BorrowKind,
    mutability: Mutability,
    expr: &Expr
)
[src]

pub fn print_expr(&mut self, expr: &Expr)[src]

pub(in pprust::state) fn print_expr_outer_attr_style(
    &mut self,
    expr: &Expr,
    is_inline: bool
)
[src]

pub(crate) fn print_local_decl(&mut self, loc: &Local)[src]

pub fn print_usize(&mut self, i: usize)[src]

pub(crate) fn print_name(&mut self, name: Symbol)[src]

pub(in pprust::state) fn print_qpath(
    &mut self,
    path: &Path,
    qself: &QSelf,
    colons_before_params: bool
)
[src]

pub(crate) fn print_pat(&mut self, pat: &Pat)[src]

pub(in pprust::state) fn print_arm(
    &mut self,
    arm: &Arm
)
[src]

pub(in pprust::state) fn print_explicit_self(
    &mut self,
    explicit_self: &ExplicitSelf
)
[src]

pub(in pprust::state) fn print_fn_full(
    &mut self,
    sig: &FnSig,
    name: Ident,
    generics: &Generics,
    vis: &Visibility,
    defaultness: Defaultness,
    body: Option<&Block>,
    attrs: &[Attribute]
)
[src]

pub(crate) fn print_fn(
    &mut self,
    decl: &FnDecl,
    header: FnHeader,
    name: Option<Ident>,
    generics: &Generics
)
[src]

pub(crate) fn print_fn_params_and_ret(
    &mut self,
    decl: &FnDecl,
    is_closure: bool
)
[src]

pub(crate) fn print_movability(&mut self, movability: Movability)[src]

pub(crate) fn print_asyncness(&mut self, asyncness: Async)[src]

pub(crate) fn print_capture_clause(&mut self, capture_clause: CaptureBy)[src]

pub fn print_type_bounds(
    &mut self,
    prefix: &'static str,
    bounds: &[GenericBound]
)
[src]

pub(crate) fn print_lifetime(&mut self, lifetime: Lifetime)[src]

pub(crate) fn print_lifetime_bounds(
    &mut self,
    lifetime: Lifetime,
    bounds: &GenericBounds
)
[src]

pub(crate) fn print_generic_params(&mut self, generic_params: &[GenericParam])[src]

pub(crate) fn print_where_clause(&mut self, where_clause: &WhereClause)[src]

pub(crate) fn print_use_tree(&mut self, tree: &UseTree)[src]

pub fn print_mutability(&mut self, mutbl: Mutability, print_const: bool)[src]

pub(crate) fn print_mt(&mut self, mt: &MutTy, print_const: bool)[src]

pub(crate) fn print_param(&mut self, input: &Param, is_closure: bool)[src]

pub(crate) fn print_fn_ret_ty(&mut self, fn_ret_ty: &FnRetTy)[src]

pub(crate) fn print_ty_fn(
    &mut self,
    ext: Extern,
    unsafety: Unsafe,
    decl: &FnDecl,
    name: Option<Ident>,
    generic_params: &[GenericParam]
)
[src]

pub(crate) fn maybe_print_trailing_comment(
    &mut self,
    span: Span,
    next_pos: Option<BytePos>
)
[src]

pub(crate) fn print_remaining_comments(&mut self)[src]

pub(crate) fn print_fn_header_info(&mut self, header: FnHeader)[src]

pub(crate) fn print_unsafety(&mut self, s: Unsafe)[src]

pub(crate) fn print_constness(&mut self, s: Const)[src]

pub(crate) fn print_is_auto(&mut self, s: IsAuto)[src]

Methods from Deref<Target = Printer>

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]

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

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

Be very careful with this!

pub(in pp) fn scan_eof(
    &mut self
)
[src]

pub(in pp) fn scan_begin(
    &mut self,
    b: BeginToken
)
[src]

pub(in pp) fn scan_end(
    &mut self
)
[src]

pub(in pp) fn scan_break(
    &mut self,
    b: BreakToken
)
[src]

pub(in pp) fn scan_string(
    &mut self,
    s: Cow<'static, str>
)
[src]

pub(in pp) fn check_stream(
    &mut self
)
[src]

pub(in pp) fn scan_push(
    &mut self,
    entry: BufEntry
)
[src]

pub(in pp) fn scan_pop(
    &mut self
) -> usize
[src]

pub(in pp) fn scan_top(
    &self
) -> usize
[src]

pub(in pp) fn scan_pop_bottom(
    &mut self
) -> usize
[src]

pub(in pp) fn advance_right(
    &mut self
)
[src]

pub(in pp) fn advance_left(
    &mut self
)
[src]

pub(in pp) fn check_stack(
    &mut self,
    k: usize
)
[src]

pub(in pp) fn print_newline(
    &mut self,
    amount: isize
)
[src]

pub(in pp) fn indent(
    &mut self,
    amount: isize
)
[src]

pub(in pp) fn get_top(
    &self
) -> PrintStackElem
[src]

pub(in pp) fn print_begin(
    &mut self,
    b: BeginToken,
    l: isize
)
[src]

pub(in pp) fn print_end(
    &mut self
)
[src]

pub(in pp) fn print_break(
    &mut self,
    b: BreakToken,
    l: isize
)
[src]

pub(in pp) fn print_string(
    &mut self,
    s: Cow<'static, str>
)
[src]

pub(in pp) fn print(
    &mut self,
    token: Token,
    l: isize
)
[src]

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(in pp) fn spaces(
    &mut self,
    n: usize
)
[src]

pub(crate) fn zerobreak(&mut self)[src]

pub fn space(&mut self)[src]

pub fn hardbreak(&mut self)[src]

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

Trait Implementations

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

type Target = Printer

The resulting type after dereferencing.

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

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

Auto Trait Implementations

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

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

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

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

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

Blanket Implementations

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

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

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

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.