| Age | Commit message (Collapse) | Author | Lines | |
|---|---|---|---|---|
| 2012-03-29 | rustc: Move attr, parse, print to rustsyntax | Brian Anderson | -2986/+0 | |
| 2012-03-29 | rustc: Move lexer and token to rustsyntax | Brian Anderson | -948/+0 | |
| 2012-03-28 | Allow explicit self-calls within classes | Tim Chevalier | -36/+21 | |
| Allow writing self.f() within a class that has a method f. In a future commit, this syntax will be required. For now, you can write either self.f() or f(). I added a "privacy" field to all methods (whether class methods or not), which allowed me to refactor the AST somewhat (getting rid of the class_item type; now there's just class_member). | ||||
| 2012-03-28 | Allow references to "self" within classes | Tim Chevalier | -1/+3 | |
| Allow writing self.f within a class that has a field f. Currently, the compiler accepts either self.f or f. In a future commit I'll require writing self.f and not f. Not sure whether self.f() works if f is a method (making sure that works next). | ||||
| 2012-03-27 | Enforce mutability declarations in classes; correct shapes for classes | Tim Chevalier | -2/+2 | |
| 1. Enforce mutability declarations on class fields. Don't allow any mutation of class fields not declared as mutable (except inside the constructor). 2. Handle classes correctly in shape (treat classes like records). | ||||
| 2012-03-27 | Support an alternate for syntax that calls a higher-order function | Marijn Haverbeke | -7/+31 | |
| The last argument of the call must be a block, and the type of this argument must a function returning bool. `break` and `cont` are supported in the body of the block, and return `false` or `true` from the function. When the end of the function is reached, `true` is implicitly returned. for vec::all([1, 2, 3]) {|elt| if elt == 2 { break; } log(error, elt); } Issue #1619 | ||||
| 2012-03-26 | Bulk-edit mutable -> mut. | Graydon Hoare | -24/+24 | |
| 2012-03-26 | rustc: "unkown" -> "unknown" | Patrick Walton | -1/+1 | |
| 2012-03-23 | rustc: Fix parsing of `ret &EXPR` | Patrick Walton | -0/+1 | |
| The parser didn't think that `&` could start an expression. | ||||
| 2012-03-21 | add mut decls to rustc and make them mandatory | Niko Matsakis | -125/+130 | |
| 2012-03-20 | Implement an initial version of placement new. | Niko Matsakis | -1/+8 | |
| 2012-03-20 | Class methods WIP | Tim Chevalier | -17/+15 | |
| In particular, use the ast::method type to represent a class method, and try to reuse as much iface code as possible. (This makes sense now since I'll be allowing polymorphic class methods.) | ||||
| 2012-03-20 | rustc: Be more careful about spans in 'unexpected token' errors | Marijn Haverbeke | -9/+12 | |
| Closes #2017 | ||||
| 2012-03-20 | Revert order of arguments to option::maybe and from_maybe | Marijn Haverbeke | -1/+1 | |
| Closes #2019 | ||||
| 2012-03-16 | core: Store reexporting result and either. Closes #1997 | Brian Anderson | -1/+2 | |
| 2012-03-14 | std: Rename the hashmap constructors to conform to new standards | Brian Anderson | -2/+2 | |
| Instead of using the new_ prefix just name them after their type | ||||
| 2012-03-13 | Name types after their modules instead of 't' | Brian Anderson | -2/+2 | |
| 2012-03-12 | Libc/os/run/rand/io reorganization. Close #1373. Close #1638. | Graydon Hoare | -12/+7 | |
| - Move io, run and rand to core. - Remove incorrect ctypes module (use libc). - Remove os-specific modules for os and fs. - Split fs between core::path and core::os. | ||||
| 2012-03-12 | rustc: Add node IDs to AST types so we can associate them with region ↵ | Patrick Walton | -19/+43 | |
| environments | ||||
| 2012-03-12 | Revert "rustc: Add node IDs to AST types so we can associate them with ↵ | Patrick Walton | -43/+19 | |
| region environments" This reverts commit 96e1bbd4a0abd2c8e76e7e02b396c5319dea7a8d. | ||||
| 2012-03-12 | rustc: Add node IDs to AST types so we can associate them with region ↵ | Patrick Walton | -19/+43 | |
| environments | ||||
| 2012-03-10 | Use loop instead of while(true) in libraries and compiler itself | Tim Chevalier | -17/+13 | |
| And remove spurious fails/unreachable() calls. | ||||
| 2012-03-09 | Add an infinite loop construct | Tim Chevalier | -6/+15 | |
| Add a loop {} construct for infinite loops, and use it in test cases. See #1906 for details. | ||||
| 2012-03-09 | rustc: Wrap regions in a node ID | Patrick Walton | -2/+3 | |
| 2012-03-09 | Revert "rustc: Create def IDs for region parameters" | Patrick Walton | -1/+1 | |
| This reverts commit 0d4cb759494f9589ba57c4f2c41f5a5737ab74e0. | ||||
| 2012-03-09 | rustc: Create def IDs for region parameters | Patrick Walton | -1/+1 | |
| 2012-03-08 | rustc: Change the address-of operator to an explicit production so that we ↵ | Patrick Walton | -1/+2 | |
| can parse the mutability | ||||
| 2012-03-08 | Change util::unreachable to core::unreachable | Tim Chevalier | -1/+1 | |
| Closes #1931 | ||||
| 2012-03-08 | Explicitly store self_ids use for self locals in methods | Marijn Haverbeke | -1/+2 | |
| This makes it possible to move them between crates without confusion, and to instantiate them at a point where the monomorphizing substitutions are known. Issue #1944 | ||||
| 2012-03-08 | rustc: Parse the safe address-of operator | Patrick Walton | -0/+6 | |
| 2012-03-08 | rustc: Parse region types | Patrick Walton | -0/+20 | |
| 2012-03-05 | rustc: Lower case error messages | Brian Anderson | -3/+5 | |
| 2012-03-04 | Translate simple classes | Tim Chevalier | -19/+28 | |
| Programs using classes with fields only (no methods) compile and run, as long as nothing refers to a class in a different crate (todo). Also changed the AST representation of classes to have a separate record for constructor info (instead of inlining the fields in the item_class node), and fixed up spans and pretty-printing for classes. | ||||
| 2012-03-02 | Move src/comp to src/rustc | Graydon Hoare | -0/+3844 | |
