about summary refs log tree commit diff
path: root/src/libsyntax/visit.rs
AgeCommit message (Collapse)AuthorLines
2013-01-10librustc: Implement `&static` as the replacement for `Durable`. r=nmatsakisPatrick Walton-2/+5
2013-01-09A collection of refactorings that I found it hard/tiresome to divide:Niko Matsakis-108/+116
- Make `extern fn()` assignable to any closure type, rather than a subtype. - Remove unused int_ty_set and float_ty_set - Refactor variable unification and make it more DRY - Do fn sub/lub/glb on the level of fn_sig - Rename infer::to_str::ToStr to infer::to_str::InferStr - Capitalize names of various types - Correct hashing of FnMeta - Convert various records-of-fns into structs-of-fns. This is both eliminating use of deprecated features and more forwards compatible with fn reform. r=pcwalton
2013-01-08librustc: Make unqualified identifier searches terminate at the nearest ↵Patrick Walton-0/+2
module scope. r=tjc
2013-01-08Revert "librustc: Make unqualified identifier searches terminate at the ↵Patrick Walton-2/+0
nearest module scope. r=tjc" This reverts commit a8d37af2473da79be704c9ce2374f278c47177b6.
2013-01-08librustc: Make unqualified identifier searches terminate at the nearest ↵Patrick Walton-0/+2
module scope. r=tjc
2012-12-27librustc: Terminate name searches at the nearest module scope for paths that ↵Patrick Walton-1/+6
contain at least two components. r=graydon
2012-12-17Add support for destructuring vectors in match expressionsJakub Wieczorek-1/+9
2012-12-12syntax: remove most code handling old-style syntax extensions.Graydon Hoare-9/+2
2012-12-10Remove un-needed code for obsolete classesTim Chevalier-9/+3
and rename "class" to "struct" everywhere possible (except local vars, I was too lazy for that) -- that is why this commit is so big. No review, just dead code removal and renaming. Closes #3515
2012-12-04librustc: Remove all legacy pattern bindings from libsyntax and librustc. ↵Patrick Walton-29/+29
rs=refactoring
2012-12-03Update license, add license boilerplate to most files. Remainder will follow.Graydon Hoare-0/+10
2012-11-30librustc: Make `a.b()` always a method call. r=nmatsakisPatrick Walton-0/+5
2012-11-29librustc: Eliminate most expressions of the form `a.b()` that are not method ↵Patrick Walton-102/+117
calls. rs=refactoring
2012-11-29Distinguish `stmt_mac`s that are followed by semicolons and those that aren't.Paul Stansifer-1/+1
2012-11-29Allow for macros to occur in statement position.Paul Stansifer-1/+2
2012-11-26Remove the crate languageBrian Anderson-10/+0
2012-11-18syntax: Remove cdir_syntax. UnusedBrian Anderson-1/+0
2012-11-14librustc: Require the #[derivable] attribute, remove the significance of ↵Patrick Walton-5/+3
"impl Foo : Bar;", and allow only a subset of methods in a trait to be derived. r=brson
2012-11-07rustc: Support irrefutable patterns in function arguments. r=nmatsakisPatrick Walton-1/+4
2012-11-06Cleanup how we handle proto in types, remove unsound subtypingNiko Matsakis-6/+6
Fixes #1896 which was never truly fixed, just masked. The given tests would have failed had they used `~fn()` and not `@fn()`. They now result in compilation errors. Fixes #2978. Necessary first step for #2202, #2263.
2012-11-05rustc: Implement parsing and typechecking for "once fn"Patrick Walton-1/+1
2012-10-30Preserve parenthesization in the ASTTim Chevalier-0/+1
Maintain explicit "paren" nodes in the AST so we can pretty-print without having to guess where parens should go. We may revisit this in the future. r=graydon
2012-10-23Remove <- operator from the compilerTim Chevalier-2/+1
Yield an obsolete syntax error on things like "let foo <- bar;" and "foo <- bar;" r=brson Progress on #3466
2012-10-23rustc: Implement typechecking for simple monomorphic derivable traits on ↵Patrick Walton-3/+5
monomorphic types. r=brson
2012-10-22Simplify the AST representation of ty param boundsTim Chevalier-4/+1
Change ast::ty_param_bound so that all ty param bounds are represented as traits, with no special cases for Copy/Send/Owned/Const. typeck::collect generates the special cases. A consequence of this is that code using the #[no_core] attribute can't use the Copy kind/trait. Probably not a big deal? As a side effect, any user-defined traits that happen to be called Copy, etc. in the same module override the built-in Copy trait. r=nmatsakis Closes #2284
2012-10-15rustc: Merge module and type namespaces. r=brsonPatrick Walton-6/+6
2012-10-15Allow enum discriminator exprs to refer to declared constsTim Chevalier-0/+2
Also some work towards #3521 Closes #2428
2012-10-12remove ctor from ast (take 2) (no review: just dead code removal)Niko Matsakis-24/+9
2012-10-08Revert "remove ctor from ast"Tim Chevalier-9/+24
This reverts commit ed3689d57c988e1dd477930d957c4308c37d1a64.
2012-10-08remove ctor from astNiko Matsakis-24/+9
2012-09-27core: More option demodingBrian Anderson-3/+3
2012-09-26core: Replace map/map_default with map_ref/map_default_refBrian Anderson-1/+1
2012-09-24Support visibility qualifiers in crate directives properly.Graydon Hoare-2/+2
2012-09-23core: Demode optionBrian Anderson-5/+5
2012-09-19demode the each() method on vec and other iterables.Niko Matsakis-22/+28
2012-09-19De-mode vec::each() and many of the str iteration routinesNiko Matsakis-1/+1
Note that the method foo.each() is not de-moded, nor the other vec routines.
2012-09-18Revert "replace explicit calls to vec::each with vec::each_ref, partially ↵Niko Matsakis-2/+2
demode str" This reverts commit 1be24f0758d3075d2e7f141f8831bb8a233ce86e. Not quite ready.
2012-09-18replace explicit calls to vec::each with vec::each_ref, partially demode strNiko Matsakis-2/+2
2012-09-07Implement &-patternsTim Chevalier-1/+2
Closes #2855
2012-09-04libsyntax: "import" -> "use"Patrick Walton-2/+2
2012-08-29rustc: Make `<` and `=` into traitsPatrick Walton-5/+1
2012-08-27rustc: more pattern cleanupErick Tryzelaar-1/+1
2012-08-26Camel case the option typeBrian Anderson-4/+4
2012-08-25rustc: Implement foreign constants.Patrick Walton-0/+3
This is needed for a lot of Apple libraries, as Apple tends to put a lot of globals in dynamic libraries.
2012-08-24Remove match checkTim Chevalier-1/+1
2012-08-24fix some unused pattern binding warningsNiko Matsakis-3/+3
2012-08-23Remove purity from fn_decl and move it out to containing AST elements.Michael Sullivan-7/+8
2012-08-22intern identifiersPaul Stansifer-3/+3
2012-08-15rustc: Perform some AST surgery to separate out class fields from methodsPatrick Walton-20/+33
2012-08-15rustc: Parse labeled loop, break, and againPatrick Walton-3/+3