about summary refs log tree commit diff
path: root/src/librustsyntax/parse/parser.rs
AgeCommit message (Collapse)AuthorLines
2012-05-24new liveness pass to supercede last_use / initednessNiko Matsakis-2/+2
2012-05-23The parser is represented by a class now.Paul Stansifer-2170/+2196
2012-05-22Get rid of the >>> operator and make >> logical or arithmetic depending on ↵Michael Sullivan-3/+2
the signedness. Closes #2417.
2012-05-18port some code to use dvecNiko Matsakis-5/+6
2012-05-15Remove `be` keyword.Lindsey Kuper-4/+0
Closes #2227.
2012-05-14First cut at dtors for classesTim Chevalier-17/+44
Classes with dtors should compile now. Haven't yet tested whether they actually run correctly. Beginnings of support for #2295, though that won't be done until there's more test cases and resources are removed.
2012-05-10Remove `do { ... } while ...` from the language.Paul Stansifer-11/+0
2012-05-08Support visibility modifiers and attributes on view itemsMarijn Haverbeke-59/+38
Issue #1893 Tangentially, issue #2357
2012-05-08Import ast::* in parser.rsMarijn Haverbeke-386/+386
And make the code look a lot less awkward.
2012-05-08Start parsing pub/priv on regular itemsMarijn Haverbeke-21/+34
Issue #1893
2012-05-08parser: Consolidate some duplicated codeMarijn Haverbeke-96/+79
2012-05-07make it illegal to implicitly capture mutable variablesNiko Matsakis-4/+5
this is the final part of #1273
2012-05-04new cap clause syntaxNiko Matsakis-99/+139
2012-05-03Revert "allow fn exprs to omit arg types"Niko Matsakis-8/+7
This reverts commit 1ba4ca4c4a0153578e812baf5f7f5554d079de40.
2012-05-03allow fn exprs to omit arg typesNiko Matsakis-7/+8
also, avoid using type variables for fn args with omitted types unless necessary. This will be important for bound regions in fn types. fixes #2093
2012-04-30Stop inferring bot/static when types/regions are unconstrained.Niko Matsakis-10/+1
Also, some other changes that came up along the way: - add a 'blk' region for the current block. - detect unused type/region variables.
2012-04-27parser: More refactoring of restricted value name checkingBrian Anderson-7/+6
2012-04-27parser: Remove a restricted keyword checkBrian Anderson-1/+0
I can't find a way to trigger this error
2012-04-27test: Add test for two restricted keyword casesBrian Anderson-2/+2
2012-04-27parser: Make parse_value_path use parse_value_identBrian Anderson-7/+10
2012-04-27parser: Rewrite parse_path_without_tps so it knows beforehand which is the ↵Brian Anderson-2/+11
last ident Needed to centralize all keyword-as-value parsing in parse_value_ident
2012-04-27parser: Fix lookahead of > 1 tokenBrian Anderson-2/+2
2012-04-27syntax: Refactor ident parsingBrian Anderson-3/+3
2012-04-26Refactor operator precedence codeTim Chevalier-15/+19
Use functions instead of a dynamically created table to determine operator precedence. Gets rid of a FIXME in syntax::parse::prec. Change precedences from int to uint while we're at it, since don't use negative precedences.
2012-04-25lots of work to make iface/impls parameterized by regionsNiko Matsakis-103/+139
- paths can now take region parameters, replacing the dirty hack I was doing before of abusing vstores. vstores are now a bit of a hack though. - fix various small bugs: - we never checked that iface types were compatible when casting to an iface with `as` - we allowed nonsense like int<int> - and more! (actually that may be it)
2012-04-24syntax: Divide keywords into contextual/restricted. No bad wordsBrian Anderson-5/+5
2012-04-24syntax: Clean up the bad_expr_word functionsBrian Anderson-4/+4
2012-04-24syntax: Rename is_word to is_keyword, etc.Brian Anderson-88/+93
2012-04-23Allow classes to be cast to ifaces that are in the same crateTim Chevalier-8/+10
I had to xfail one existing test case (class-implements-int) because, I think, of the same bug described in #2272.
2012-04-23Simplify representation of ast::pathMarijn Haverbeke-77/+61
2012-04-22syntax: Replace token::DOLLAR_PAREN, DOLLAR_NUM with just DOLLARBrian Anderson-12/+20
Figure the rest out in the parser
2012-04-22syntax: Eliminate token::POUND_LT, POUND_LBRACEBrian Anderson-6/+8
Use lookahead in the parser
2012-04-21syntax: Eliminate 'mutable' keyword. Closes #2254Brian Anderson-1/+1
2012-04-20Add new syntax for patterns that match the head constructor onlyTim Chevalier-9/+23
Adds a new kind of pattern C(*) where C is a constructor that may have any number of fields. This pattern matches any value constructed with C, without binding names for any of the fields. Closes #1701.
2012-04-19syntax: Move fn spanned into ast_utilBrian Anderson-2/+1
2012-04-19syntax: Extract some functions into mod commonBrian Anderson-203/+1
2012-04-19syntax: Extract attribute parsing to its own modBrian Anderson-111/+11
2012-04-19update syntax to include a slashNiko Matsakis-1/+6
2012-04-19make nominal types optionally parameterized by a self region.Niko Matsakis-9/+18
Issue #2201.
2012-04-19Annotate FIXMEs in parserTim Chevalier-29/+26
Also, get rid of two FIXMEs by refactoring some code, and moving the call_expr check for be expressions into typeck, where it seems to make more sense.
2012-04-19syntax: Funnel all words through a single keyword tableBrian Anderson-8/+18
2012-04-18syntax: Put the main parser interface in mod parseBrian Anderson-161/+9
2012-04-18syntax: Begin moving functions from mod parser to mod classifyBrian Anderson-35/+4
2012-04-18syntax: Move some functions from parser to tokenBrian Anderson-46/+15
2012-04-18syntax: Extract prec mod from parser modBrian Anderson-36/+4
2012-04-17syntax: Add explicit exports in parser modsBrian Anderson-0/+27
2012-04-17syntax: Remove extra 'mut' from bad word tableBrian Anderson-1/+1
2012-04-16rewrite region resolution so it takes place in typeckNiko Matsakis-4/+2
2012-04-15syntax: lexer doesn't need a codemapBrian Anderson-2/+2
2012-04-15syntax: Eliminate token's dependency on lexerBrian Anderson-11/+15