comments only
This commit is contained in:
parent
e3361bcbc2
commit
04ced031ad
|
@ -30,6 +30,7 @@ use std::collections::HashMap;
|
|||
// change the semantics--everything here is immutable--but
|
||||
// it should cut down on memory use *a lot*; applying a mark
|
||||
// to a tree containing 50 identifiers would otherwise generate
|
||||
// 50 new contexts
|
||||
pub struct SCTable {
|
||||
table: RefCell<Vec<SyntaxContext_>>,
|
||||
mark_memo: RefCell<HashMap<(SyntaxContext,Mrk),SyntaxContext>>,
|
||||
|
@ -160,7 +161,7 @@ fn with_resolve_table_mut<T>(op: |&mut ResolveTable| -> T) -> T {
|
|||
}
|
||||
|
||||
// Resolve a syntax object to a name, per MTWT.
|
||||
// adding memoization to possibly resolve 500+ seconds in resolve for librustc (!)
|
||||
// adding memoization to resolve 500+ seconds in resolve for librustc (!)
|
||||
fn resolve_internal(id: Ident,
|
||||
table: &SCTable,
|
||||
resolve_table: &mut ResolveTable) -> Name {
|
||||
|
|
|
@ -114,6 +114,7 @@ pub enum Nonterminal {
|
|||
NtPat( Gc<ast::Pat>),
|
||||
NtExpr(Gc<ast::Expr>),
|
||||
NtTy( P<ast::Ty>),
|
||||
// see IDENT, above, for meaning of bool in NtIdent:
|
||||
NtIdent(Box<ast::Ident>, bool),
|
||||
NtMeta(Gc<ast::MetaItem>), // stuff inside brackets for attributes
|
||||
NtPath(Box<ast::Path>),
|
||||
|
|
Loading…
Reference in New Issue