about summary refs log tree commit diff
path: root/src/comp/syntax/parse/parser.rs
AgeCommit message (Collapse)AuthorLines
2011-08-03parse_crate_from_source_str takes a parse_sess, not codemapBrian Anderson-2/+1
This was causing problems when reading from stdin for subsequent passes that needed to generate node ids.
2011-08-02Use ioivec::read_whole_file_str in a few placesBrian Anderson-2/+1
2011-08-02Compiler accepts input from stdin when source file is called "-"Brian Anderson-6/+21
2011-08-01Partially implement destructuring localsMarijn Haverbeke-7/+3
You can now say let {bcx, val} = some_result_returner(); Similar for loop variables. Assigning to such variables is not safe yet. Function arguments also remain a TODO.
2011-07-29Remove unreachable statementsMarijn Haverbeke-12/+5
2011-07-29Parse anonymous objs in statement positionMarijn Haverbeke-32/+21
Closes #761
2011-07-29Remove support for obj dtorsMarijn Haverbeke-23/+2
2011-07-28The names 'outer' and 'inner' make more sense than 'self' and 'with'.Lindsey Kuper-5/+5
(Also, some formatting and long-string cleanup.)
2011-07-28Change macro syntax to accept a single expr, not a sequence of exprs.Paul Stansifer-3/+10
2011-07-28Parse, store and print type parameter kind constraints.Graydon Hoare-1/+8
2011-07-27Remove vestiges of "layers", insert skeletal do-nothing "kind" pass plus ↵Graydon Hoare-16/+4
cached calculation of kind for each type.
2011-07-27No longer allow 'case' keyword before patternsMarijn Haverbeke-4/+0
2011-07-27Fix damage done by the pretty-printerMarijn Haverbeke-17/+14
2011-07-27Reformat for new syntaxMarijn Haverbeke-1517/+1463
2011-07-27Update the parser to accept the new syntaxMarijn Haverbeke-155/+59
2011-07-26Add block and closure protos and parse/pp block and lambda exprs.Michael Sullivan-4/+16
2011-07-26Remove tuple support from the compilerMarijn Haverbeke-17/+0
2011-07-26Properly parse 'auto' for loop variable typesMarijn Haverbeke-1/+1
2011-07-26Remove all uses of tuples from the compiler and stdlibMarijn Haverbeke-39/+42
2011-07-26Make the pretty-printer output new-style syntax for local declsMarijn Haverbeke-1/+0
2011-07-26Add support for new-style local declsMarijn Haverbeke-0/+33
let x = 5; let y: int = 10; // as soon as a typestate bug is fixed: let x: str = foo, y <- 20u; 'auto' and 'type-first let' will soon be dropped.
2011-07-25Correct input coordinate tracking on block-opening brace.Graydon Hoare-5/+5
2011-07-25Rename the block type to be blk also. Sorry.Michael Sullivan-4/+4
2011-07-25Disallow block as a variable name in preparation for it becoming a keyword.Michael Sullivan-2/+3
2011-07-25Add support for bracey record types and literalsMarijn Haverbeke-8/+46
type foo = {mutable x: int, y: int}; auto myfoo = {mutable x: 10, y: 20u}; The old syntax is also still supported.
2011-07-25Add look-ahead to parser objectMarijn Haverbeke-34/+48
2011-07-25Make the lexer slightly less statefulMarijn Haverbeke-8/+7
2011-07-25Remove some rustboot-ismsMarijn Haverbeke-4/+3
Closes #464
2011-07-25Fix span information returned by parser::parse_seqMarijn Haverbeke-35/+33
Its hi pos used to be the end of the token after the sequence. It now properly reports the end of the closing token.
2011-07-22Implement Macro By Example.Paul Stansifer-0/+3
2011-07-22Start adding support for multiple variable declarations per stmtMarijn Haverbeke-4/+12
This adds parser support and most of the machinery for auto x = 10, y = 20; However, the above still goes wrong somewhere in typestate, causing the state checker to believe only the last variable in the list is initialized after the statement. Tim, if you have a moment, could you go over the changes to the tstate code in this patch and see where I'm going wrong? Multi-var-decls without the typestate extension Add a loop
2011-07-21Remove vestiges of typarams from anon objs.Lindsey Kuper-5/+2
2011-07-20Parse nil literals (including in patterns)Tim Chevalier-0/+5
Closes #622.
2011-07-19Beginnings of support for constrained typesTim Chevalier-41/+71
Programs with constrained types now parse and typecheck, but typestate doesn't check them specially, so the one relevant test case so far is XFAILed. Also rewrote all of the constraint-related data structures in the process (again), for some reason. I got rid of a superfluous data structure in the context that was mapping front-end constraints to resolved constraints, instead handling constraints in the same way in which everything else gets resolved.
2011-07-18Support x86 stdcall conventionBrian Anderson-0/+2
This allows rust to call the Win32 API
2011-07-16Make clear the differentiation between char pos and byte pos in filemaps. ↵Josh Matthews-5/+8
Fix up error printing for files with multi-byte characters.
2011-07-15rustc: Remove a bunch of exterior vectorsPatrick Walton-93/+55
2011-07-14rustc: Move much of metadata reading over to interior vectorsPatrick Walton-3/+3
2011-07-13Prohibit trailing whitespace under 'tidy' script. Clean up all caught cases.Graydon Hoare-7/+7
2011-07-13Parse nullary ret correctlyTim Chevalier-9/+7
ret is similar to fail: if not followed by an expression, it should be parsed as a ret without an argument. The old version would fail if ret was followed by a close paren (for example). Fixed it. Closes #676.
2011-07-13box patterns, expect for the trans partMarijn Haverbeke-3/+8
2011-07-11Make the parser add correct spans to view_itemsTim Chevalier-30/+19
Closes #650.
2011-07-11Change "etc" syntax for record patterns from `{a:b ...}` to `{a:b, _}`.Paul Stansifer-5/+5
2011-07-11Add elipses, reorganize the macro components into their own AST node.Paul Stansifer-5/+21
2011-07-11Move macro expansion to a separate phase, change macro syntax, and add ↵Paul Stansifer-49/+10
parse_sess to session.
2011-07-11Add nodes for embedding types and blocks in expressions for macros.Paul Stansifer-2/+16
2011-07-11Add parser::parse_crate_from_source_strBrian Anderson-0/+18
The fuzzer wants to be able to do stuff like this
2011-07-11Pull lexer creation out of new_parserBrian Anderson-13/+18
This will allow custom lexers to be injected into the parser (for fuzzing)
2011-07-11Pull file reading out of the lexerBrian Anderson-1/+2
2011-07-11rustc: Implement explicit global scope resolution via leading "::"; add a ↵Patrick Walton-6/+18
test case