Module syntax::parse::parser[][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

use rustc_target::spec::abi;
use rustc_target::spec::abi::Abi;
use ast::AngleBracketedParameterData;
use ast::ParenthesizedParameterData;
use ast::AttrStyle;
use ast::BareFnTy;
use ast::RegionTyParamBound;
use ast::TraitTyParamBound;
use ast::TraitBoundModifier;
use ast::Unsafety;
use ast::Mod;
use ast::AnonConst;
use ast::Arg;
use ast::Arm;
use ast::Attribute;
use ast::BindingMode;
use ast::TraitItemKind;
use ast::Block;
use ast::BlockCheckMode;
use ast::CaptureBy;
use ast::Movability;
use ast::Constness;
use ast::Crate;
use ast::Defaultness;
use ast::EnumDef;
use ast::Expr;
use ast::ExprKind;
use ast::RangeLimits;
use ast::Field;
use ast::FnDecl;
use ast::ForeignItem;
use ast::ForeignItemKind;
use ast::FunctionRetTy;
use ast::GenericParam;
use ast::Ident;
use ast::ImplItem;
use ast::IsAuto;
use ast::Item;
use ast::ItemKind;
use ast::Label;
use ast::Lifetime;
use ast::LifetimeDef;
use ast::Lit;
use ast::LitKind;
use ast::Local;
use ast::MacStmtStyle;
use ast::Mac;
use ast::Mac_;
use ast::MacDelimiter;
use ast::MutTy;
use ast::Mutability;
use ast::Pat;
use ast::PatKind;
use ast::PathSegment;
use ast::PolyTraitRef;
use ast::QSelf;
use ast::Stmt;
use ast::StmtKind;
use ast::VariantData;
use ast::StructField;
use ast::StrStyle;
use ast::SelfKind;
use ast::TraitItem;
use ast::TraitRef;
use ast::TraitObjectSyntax;
use ast::Ty;
use ast::TyKind;
use ast::TypeBinding;
use ast::TyParam;
use ast::TyParamBounds;
use ast::Visibility;
use ast::VisibilityKind;
use ast::WhereClause;
use ast::CrateSugar;
use ast::UseTree;
use ast::UseTreeKind;
use ast::BinOpKind;
use ast::UnOp;
use ast::RangeEnd;
use ast::RangeSyntax;
use ast;
use attr;
use codemap;
use codemap::CodeMap;
use codemap::Spanned;
use codemap::respan;
use syntax_pos;
use syntax_pos::Span;
use syntax_pos::MultiSpan;
use syntax_pos::BytePos;
use syntax_pos::FileName;
use syntax_pos::DUMMY_SP;
use errors;
use errors::Applicability;
use errors::DiagnosticBuilder;
use parse;
use parse::SeqSep;
use parse::classify;
use parse::token;
use parse::lexer::TokenAndSpan;
use parse::lexer::comments::doc_comment_style;
use parse::lexer::comments::strip_doc_comment_decoration;
use parse::new_sub_parser_from_file;
use parse::ParseSess;
use parse::Directory;
use parse::DirectoryOwnership;
use util::parser::AssocOp;
use util::parser::Fixity;
use print::pprust;
use ptr::P;
use ptr::P;
use parse::PResult;
use tokenstream;
use tokenstream::Delimited;
use tokenstream::ThinTokenStream;
use tokenstream::TokenTree;
use tokenstream::TokenStream;
use symbol::Symbol;
use symbol::keywords;
use util::ThinVec;
use std::borrow::Cow;
use std::cmp;
use std::mem;
use std::path;
use std::path::Path;
use std::path::PathBuf;
use std::slice;

Structs

ModulePath [
Experimental
]

Information about the path to a module.

ModulePathSuccess [
Experimental
]
Parser [
Experimental
]
Restrictions [
Experimental
]
TokenCursor [
Experimental
]
TokenCursorFrame [
Experimental
]

Enums

BlockMode [
Experimental
]
Error [
Experimental
]
LastToken [
Experimental
]

This is used in TokenCursorFrame above to track tokens that are consumed by the parser, and then that's transitively used to record the tokens that each parse AST item is created with.

LhsExpr [
Experimental
]
PathStyle [
Experimental
]

How to parse a path.

PrevTokenKind [
Experimental
]
SemiColonMode [
Experimental
]
TokenExpectType [
Experimental
]
TokenType [
Experimental
]

Traits

RecoverQPath [
Experimental
]

Functions

can_continue_type_after_non_fn_ident [
Experimental
]

Returns true if IDENT t can start a type - IDENT::a::b, IDENT<u8, u8>, IDENT<<u8 as Trait>::AssocTy>.

dummy_arg [
Experimental
]

Create a placeholder argument.

maybe_append [
Experimental
]

Type Definitions

ItemInfo [
Experimental
]