about summary refs log tree commit diff
path: root/src/comp/syntax/parse
AgeCommit message (Collapse)AuthorLines
2011-08-09Remove support for the ivec T[] syntax.Erick Tryzelaar-34/+15
2011-08-09Port the compiler to the ivec type [T] syntax.Erick Tryzelaar-90/+91
2011-08-09Change the ivec type syntax to [T].Erick Tryzelaar-0/+5
This preserves the old syntax for now.
2011-08-08Add new arg-passing mode 'move' denoted with '-T'. Translate as ↵Graydon Hoare-0/+2
pass-by-value, doesn't deinit source yet nor get proper analysis in typestate, alias passes.
2011-08-05rustc: Parse "inline". Also write it into metadata.Patrick Walton-13/+20
2011-08-05rustc: Add inlineness to the fn decl insteadPatrick Walton-0/+3
2011-08-05Revert "rustc: Introduce the concept of inline to the AST"Patrick Walton-2/+2
This reverts commit 9b9170f9fe2e4701255a5bd0630c203409d8e934.
2011-08-05rustc: Introduce the concept of inline to the ASTPatrick Walton-2/+2
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-7/+23
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-13/+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-28:: is allowed to start an expression. Close #762.Josh Matthews-0/+1
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-27Make printing of comments inside bindings slightly less brokenMarijn Haverbeke-11/+1
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-2084/+2015
2011-07-27Update the parser to accept the new syntaxMarijn Haverbeke-155/+59
2011-07-26Handle column-zero \n explicitly rather than looking for \n\n.Graydon Hoare-4/+1
2011-07-26Consume EOL after line comment.Graydon Hoare-0/+3
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-50/+53
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-25Recognize and preserve first blank line if first line of file.Graydon Hoare-5/+13
2011-07-25Rename the block type to be blk also. Sorry.Michael Sullivan-4/+4
2011-07-25Adjust pp interface to that printing a crate (an reproducing ↵Graydon Hoare-2/+2
literals/comments) takes a reader, not just a filename. Fixes first big pp-fuzzer bug.
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-29/+25
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-10/+22
Fix up error printing for files with multi-byte characters.