about summary refs log tree commit diff
path: root/src/rustc/middle/pat_util.rs
AgeCommit message (Collapse)AuthorLines
2012-11-07Rename src/rustc to src/librustc. Use the driver crateBrian Anderson-61/+0
2012-11-02rustc: Implement translation of pattern matching for tuple structs and ↵Patrick Walton-9/+11
unit-like structs. r=nmatsakis
2012-10-25rustc: Translate and check exhaustiveness of struct-like enum variant ↵Patrick Walton-1/+1
patterns. r=nmatsakis
2012-09-26Demode vec::push (and convert to method)Niko Matsakis-1/+1
2012-09-19Remove redundant hashmap constructor functions.Graydon Hoare-1/+1
2012-09-12trans: overhaul match bindings. No more phi, one code path for guards.Niko Matsakis-4/+12
Fixes #3256. Fixes #3291.
2012-09-10Convert std::map to camel caseBrian Anderson-2/+2
2012-09-04rustc: "import" -> "use"Patrick Walton-7/+7
2012-08-29Rename resolve3 -> resolve.Graydon Hoare-4/+4
2012-08-26Camel case the option typeBrian Anderson-2/+2
2012-08-22intern identifiersPaul Stansifer-1/+1
2012-08-07syntax: Make match arm parsing more restrictive againBrian Anderson-1/+1
Require comma separators for all expression types except the plain block
2012-08-06make `ref x` bindings produce region ptrs and fix various minor bugsNiko Matsakis-5/+5
we now detect inconsistent modes, binding names, and various other errors. typeck/trans integration is mostly done. borrowck not so much. more tests needed.
2012-08-06Convert alt to match. Stop parsing altBrian Anderson-3/+3
2012-08-05Switch alts to use arrowsBrian Anderson-9/+7
2012-08-01Convert ret to returnBrian Anderson-2/+2
2012-07-31rustc: Parse by-reference pattern bindings with the "ref" keywordPatrick Walton-2/+2
2012-07-20Remove what's left of resolve1Tim Chevalier-4/+4
2012-07-10In resolve, check that an or-pattern has the same number of bindings in each ↵Tim Chevalier-3/+0
disjunct resolve3 wasn't checking this. Added test cases. Also added a helpful informational message in the case where you have a variable binding that you probably think refers to a variant that you forgot to import. This is easier to do in resolve than in typeck because there's code in typeck that assumes that each of the patterns binds the same number of variables.
2012-07-01Convert to new closure syntaxBrian Anderson-3/+3
2012-06-30Eliminate usages of old sugared call syntaxBrian Anderson-3/+3
2012-06-29Switch the compiler over to using ~[] notation instead of []/~. Closes #2759.Michael Sullivan-2/+2
2012-06-28Replaced almost all vector+ in rustc (#2719)Eric Holk-1/+1
Didn't update shape because the changes were causing segfaults.
2012-06-25Make vectors uglier ([]/~). Sorry. Should be temporary. Closes #2725.Michael Sullivan-3/+3
2012-06-13Box AST identsBrian Anderson-2/+2
2012-05-21rustc: Move walk_pat to ast_utilBrian Anderson-15/+1
This will allow ast_map to move to the syntax crate
2012-05-21rustc: Move path_to_ident to ast_utilBrian Anderson-3/+1
2012-04-23Simplify representation of ast::pathMarijn Haverbeke-4/+1
2012-04-20Add new syntax for patterns that match the head constructor onlyTim Chevalier-2/+3
Adds a new kind of pattern C(*) where C is a constructor that may have any number of fields. This pattern matches any value constructed with C, without binding names for any of the fields. Closes #1701.
2012-04-06Convert old-style for loops to new-styleMarijn Haverbeke-2/+2
Most could use the each method, but because of the hack used to disambiguate old- and new-style loops, some had to use vec::each. (This hack will go away soon.) Issue #1619
2012-03-21add mut decls to rustc and make them mandatoryNiko Matsakis-1/+1
2012-03-14std: Rename the hashmap constructors to conform to new standardsBrian Anderson-1/+1
Instead of using the new_ prefix just name them after their type
2012-03-08Rename last to last_opt, last_unsafe to lastTim Chevalier-1/+1
As per discussion on IRC. I am about to file an RFC for further discussion about the more general issue of whether to enforce invariants through types, typestate, or dynamic checks, but for now, removing the misleading name "last_unsafe".
2012-03-08Rename last_total to last_unsafeTim Chevalier-1/+4
See Issue 1943 for any discussion (reopen it if necessary). Closes #1943
2012-03-07stdlib: Stop incurring vtable dispatch costs when hashmaps are usedPatrick Walton-0/+1
This required changing almost all users of hashmaps to import the hashmap interface first. The `size` member in the hashmap structure was renamed to `count` to work around a name conflict.
2012-03-07Revert "stdlib: Stop incurring vtable dispatch costs when hashmaps are used"Patrick Walton-1/+0
This reverts commit f0250a23d3fa2f8b4a4a4113ca89e41945a4cfed.
2012-03-07stdlib: Stop incurring vtable dispatch costs when hashmaps are usedPatrick Walton-0/+1
This required changing almost all users of hashmaps to import the hashmap interface first. The `size` member in the hashmap structure was renamed to `count` to work around a name conflict.
2012-03-02Move src/comp to src/rustcGraydon Hoare-0/+70