about summary refs log tree commit diff
path: root/src/comp/syntax/fold.rs
AgeCommit message (Collapse)AuthorLines
2011-08-15rustc: Parse and typecheck unique pointersPatrick Walton-0/+1
2011-08-15Add tuple patternsMarijn Haverbeke-0/+3
2011-08-15Tuple fields are immutableMarijn Haverbeke-5/+1
2011-08-15Tuple types back, not constructable yetMarijn Haverbeke-0/+7
2011-08-10Introduce a ty_infer ast node and use it instead of option::t[ty].Michael Sullivan-6/+3
This actually basically makes things worse, since we get less nice type system guarentees but it will make doing type inferred blocks a fair deal less painful. I'm not /really/ happy about this...
2011-08-09Port the compiler to the ivec type [T] syntax.Erick Tryzelaar-3/+3
2011-08-05rustc: Add inlineness to the fn decl insteadPatrick Walton-0/+2
2011-08-05Revert "rustc: Introduce the concept of inline to the AST"Patrick Walton-1/+1
This reverts commit 9b9170f9fe2e4701255a5bd0630c203409d8e934.
2011-08-05rustc: Introduce the concept of inline to the ASTPatrick Walton-1/+1
2011-08-01Partially implement destructuring localsMarijn Haverbeke-10/+8
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 support for obj dtorsMarijn Haverbeke-2/+2
2011-07-28The names 'outer' and 'inner' make more sense than 'self' and 'with'.Lindsey Kuper-1/+1
(Also, some formatting and long-string cleanup.)
2011-07-28Change macro syntax to accept a single expr, not a sequence of exprs.Paul Stansifer-9/+8
2011-07-27Fix damage done by the pretty-printerMarijn Haverbeke-4/+3
2011-07-27Reformat for new syntaxMarijn Haverbeke-539/+509
2011-07-26Remove tuple support from the compilerMarijn Haverbeke-7/+0
2011-07-25Rename the block type to be blk also. Sorry.Michael Sullivan-8/+8
2011-07-25Disallow block as a variable name in preparation for it becoming a keyword.Michael Sullivan-10/+10
2011-07-22Implement Macro By Example.Paul Stansifer-30/+42
2011-07-22Start adding support for multiple variable declarations per stmtMarijn Haverbeke-3/+2
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-2/+2
2011-07-19Beginnings of support for constrained typesTim Chevalier-3/+4
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-13Prohibit trailing whitespace under 'tidy' script. Clean up all caught cases.Graydon Hoare-49/+49
2011-07-13box patterns, expect for the trans partMarijn Haverbeke-0/+1
2011-07-12Elide existing main function when building a test runner. Issue #428Brian Anderson-0/+1
This prevents any defined main function from colliding with the one synthesized for the test runner. This is not the best solution since it doesn't compile a function the user defined, but I don't think it's likely to be a problem in the near term.
2011-07-12rustc: Move ppaux away from exterior vectorsPatrick Walton-2/+0
2011-07-11So... I can't spell 'ellipsis'.Paul Stansifer-1/+1
2011-07-11Add elipses, reorganize the macro components into their own AST node.Paul Stansifer-9/+22
2011-07-11Move macro expansion to a separate phase, change macro syntax, and add ↵Paul Stansifer-2/+2
parse_sess to session.
2011-07-11Add nodes for embedding types and blocks in expressions for macros.Paul Stansifer-16/+6
2011-07-11rustc: Implement explicit global scope resolution via leading "::"; add a ↵Patrick Walton-1/+2
test case
2011-07-11Implement record patternsMarijn Haverbeke-0/+7
Closes #469.
2011-07-11Implement or-patterns in case clausesMarijn Haverbeke-1/+2
You can now say expr_move(?dst, ?src) | expr_assign(?dst, ?src) { ... } to match both expr_move and expr_assign. The names, types, and number of bound names have to match in all the patterns. Closes #449.
2011-07-10Export noop_fold_expr so the fuzzer can use itJesse Ruderman-0/+1
2011-07-09Track the path as we fold over the AST looking for unit tests. Issue #428Brian Anderson-0/+1
2011-07-07rustc: Remove all exterior vectors from the ASTPatrick Walton-5/+5
2011-07-07rustc: Change lots of AST nodes to use interior vectorsPatrick Walton-20/+21
2011-07-06rustc: Move AST constraints to interior vectorsPatrick Walton-4/+5
2011-07-06rustc: Make meta items into interior vectorsPatrick Walton-2/+2
2011-07-06rustc: Move crate directives over to interior vectorsPatrick Walton-2/+2
2011-07-06rustc: Convert attribute in the AST to interior vectorsPatrick Walton-5/+5
2011-07-06rustc: Make AST paths use interior vectorsPatrick Walton-2/+3
2011-07-06Begin adding unit testing infrastructure to the compilerBrian Anderson-0/+1
Add a --test flag and a pass for transforming the AST to generate a test harness. Issue #428
2011-07-06Simplify AST for expr_anon_obj.Lindsey Kuper-2/+2
2011-07-06rustc: Revert the conversion to interior vectors due to heap corruptionPatrick Walton-10/+9
2011-07-06Temp commit on the way to making meta_item into an interior vectorPatrick Walton-2/+2
2011-07-06rustc: Move crate directives over to interior vectorsPatrick Walton-2/+2
2011-07-06rustc: Convert attribute in the AST to interior vectorsPatrick Walton-5/+5
2011-07-06rustc: Make AST paths use interior vectorsPatrick Walton-2/+3
2011-07-05Parse attributes for native items. Closes #609Brian Anderson-0/+3