about summary refs log tree commit diff
path: root/src/comp/syntax/print/pprust.rs
AgeCommit message (Collapse)AuthorLines
2011-08-15Add tuple patternsMarijn Haverbeke-0/+5
2011-08-15Tuple fields are immutableMarijn Haverbeke-9/+2
2011-08-15Tuple types back, not constructable yetMarijn Haverbeke-0/+18
2011-08-12Rename std::ioivec to std::ioBrian Anderson-6/+6
2011-08-12Rename std::str::unsafe_from_bytes_ivec to unsafe_from_bytesBrian Anderson-1/+1
2011-08-12Convert all uses of unsafe_from_bytes to unsafe_from_bytes_ivecBrian Anderson-2/+2
2011-08-12Remove str::from_bytesBrian Anderson-1/+2
This is exactly the same as str::unsafe_from_bytes
2011-08-10Introduce a ty_infer ast node and use it instead of option::t[ty].Michael Sullivan-17/+14
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-10Eliminate the last vestiges of init_recv.Michael Sullivan-1/+0
2011-08-09Port the compiler to the ivec type [T] syntax.Erick Tryzelaar-26/+26
2011-08-09Change the ivec type syntax to [T].Erick Tryzelaar-14/+3
This preserves the old syntax for now.
2011-08-08Add new arg-passing mode 'move' denoted with '-T'. Translate as ↵Graydon Hoare-0/+1
pass-by-value, doesn't deinit source yet nor get proper analysis in typestate, alias passes.
2011-08-03Make the pretty printer put trailing newlines at the end of files.Michael Sullivan-0/+3
2011-08-03Pretty-print kinds of type paramsBrian Anderson-0/+9
2011-08-03Disambiguate unop statements in pretty-printer. Closes #674Brian Anderson-1/+44
2011-08-02Pretty-print fn constraints more correctishBrian Anderson-5/+27
2011-08-02Don't pp extra lines after block open when preserving whitespace. Closes #759Brian Anderson-1/+15
2011-08-01Partially implement destructuring localsMarijn Haverbeke-5/+6
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-8/+0
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-6/+5
2011-07-28Parse, store and print type parameter kind constraints.Graydon Hoare-1/+3
2011-07-27Stop outputting spurious spaces in ivec types and empty mutable vecsMarijn Haverbeke-2/+9
(in the pretty-printer)
2011-07-27Remove superfluous spaces in pretty-printing of loopsMarijn Haverbeke-11/+5
(And extra parens around else-if tests)
2011-07-27Make the pretty-printer output whitespace before obj drop clauseMarijn Haverbeke-1/+5
2011-07-27Improve pretty-printing of constraintsMarijn Haverbeke-13/+15
(Methods still don't seem to have constraints associated with them. Method types do, so I guess this is a TODO.)
2011-07-27Make printing of comments inside bindings slightly less brokenMarijn Haverbeke-3/+2
2011-07-27Reformat for new syntaxMarijn Haverbeke-1127/+1029
2011-07-27Output native_name field for native mods when neededMarijn Haverbeke-0/+5
2011-07-27Have the pretty-printer parentesize unary ops when neededMarijn Haverbeke-3/+13
2011-07-27Update the pretty-printer to output the new syntaxMarijn Haverbeke-20/+19
2011-07-27Parenthesize ivec types as neededMarijn Haverbeke-0/+8
2011-07-26Try to keep the local and its type together when wrapping a long decl.Graydon Hoare-3/+7
2011-07-26Prohibit breaking between "let" and "=" in local decls.Graydon Hoare-2/+4
2011-07-26Trailing whitespace.Graydon Hoare-1/+1
2011-07-26Handle printing 'auto' occurring in loop-variable context.Graydon Hoare-1/+4
2011-07-26Improve printing of mod and native mod.Graydon Hoare-33/+47
2011-07-26Handle hardbreaks at bol slightly better, including break_offset calls (tuck ↵Graydon Hoare-17/+23
offset into previous hardbreak).
2011-07-26Add block and closure protos and parse/pp block and lambda exprs.Michael Sullivan-0/+2
2011-07-26Remove tuple support from the compilerMarijn Haverbeke-19/+0
2011-07-26Make the pretty-printer output new-style syntax for recordsMarijn Haverbeke-9/+8
2011-07-26Make the pretty-printer output new-style syntax for local declsMarijn Haverbeke-10/+8
2011-07-25Rename the block type to be blk also. Sorry.Michael Sullivan-5/+5
2011-07-25Adjust pp interface to that printing a crate (an reproducing ↵Graydon Hoare-2/+6
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-16/+16
2011-07-22Start adding support for multiple variable declarations per stmtMarijn Haverbeke-10/+14
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/+1
2011-07-21Make the pretty-printer output paren-free and case-free codeMarijn Haverbeke-19/+19
We should probably do another pretty-printing pass soon.
2011-07-19Beginnings of support for constrained typesTim Chevalier-5/+22
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-19Simple refactoring in the pretty printer.Michael Sullivan-7/+10
Introduce a proto_to_str function to find the string representation of a given proto instead of casing on the proto in multiple places.