Module rustc::hir::print[][src]

🔬 This is a nightly-only experimental API. (rustc_private)

this crate is being loaded from the sysroot, an unstable location; did you mean to load this crate from crates.io via Cargo.toml instead?

Re-exports

pub use self::AnnNode::*;
use rustc_target::spec::abi::Abi;
use syntax::ast;
use syntax::codemap::CodeMap;
use syntax::codemap::Spanned;
use syntax::parse::token;
use syntax::parse::ParseSess;
use syntax::parse::lexer::comments;
use syntax::print::pp;
use syntax::print::pp::Breaks;
use syntax::print::pp::Breaks::Consistent;
use syntax::print::pp::Breaks::Inconsistent;
use syntax::print::pprust::PrintState;
use syntax::ptr::P;
use syntax::symbol::keywords;
use syntax::util::parser;
use syntax::util::parser::AssocOp;
use syntax::util::parser::Fixity;
use syntax_pos;
use syntax_pos::BytePos;
use syntax_pos::FileName;
use hir;
use hir::PatKind;
use hir::RegionTyParamBound;
use hir::TraitTyParamBound;
use hir::TraitBoundModifier;
use hir::RangeEnd;
use std::cell::Cell;
use std::io;
use std::io::Write;
use std::io::Read;
use std::iter::Peekable;
use std::vec;

Structs

NoAnn [
Experimental
]
State [
Experimental
]

Enums

AnnNode [
Experimental
]
Nested [
Experimental
]

Constants

NO_ANN [
Experimental
]
default_columns [
Experimental
]
indent_unit [
Experimental
]

Traits

PpAnn [
Experimental
]

Functions

bin_op_to_assoc_op [
Experimental
]
contains_exterior_struct_lit [
Experimental
]

Expressions that syntactically contain an "exterior" struct literal i.e. not surrounded by any parens or other delimiters, e.g. X { y: 1 }, X { y: 1 }.method(), foo == X { y: 1 } and X { y: 1 } == foo all do, but (X { y: 1 }) == foo does not.

expr_requires_semi_to_be_stmt [
Experimental
]

Does this expression require a semicolon to be treated as a statement? The negation of this: 'can this expression be used as a statement without a semicolon' -- is used as an early-bail-out in the parser so that, for instance, if true {...} else {...} |x| 5 isn't parsed as (if true {...} else {...} | x) | 5

print_crate [
Experimental
]

Requires you to pass an input filename and reader so that it can scan the input text for comments and literals to copy forward.

stmt_ends_with_semi [
Experimental
]

this statement requires a semicolon after it. note that in one case (stmt_semi), we've already seen the semicolon, and thus don't need another.

to_string [
Experimental
]
visibility_qualified [
Experimental
]