about summary refs log tree commit diff
path: root/src/libsyntax/parse/lexer.rs
AgeCommit message (Collapse)AuthorLines
2013-02-27librustc: Forbid `pub` or `priv` before trait implementationsPatrick Walton-1/+1
2013-02-26Macros now leave scopeJohn Clements-0/+48
Macro scope is now delimited by function, block, and module boundaries, except for modules that are marked with #[macro_escape], which allows macros to escape.
2013-02-25libsyntax: make lexer vecs_implicitly_copyable-freeErick Tryzelaar-8/+17
2013-02-15librustc: Stop parsing `impl Type : Trait` and fix several declarations that ↵Patrick Walton-1/+1
slipped through. r=tjc
2013-02-14auto merge of #4911 : lifthrasiir/rust/comment-exemptions, r=catamorphismbors-11/+26
This is a natural extension of #4887, and handles the following three cases: ~~~~ a line with only /s //////////////////////////////////////////// a line with only /s followed by whitespace //////////////////////////////////////////// a block comment with only *s between two /s /********************************/ ~~~~
2013-02-14librustc: Replace `impl Type : Trait` with `impl Trait for Type`. ↵Patrick Walton-1/+1
rs=implflipping
2013-02-13Remove die!, raplace invocations with fail! Issue #4524 pt 3Nick Desaulniers-1/+1
2013-02-13libsyntax: don't parse ////, /***/ as doc commentsKang Seonghoon-11/+26
2013-02-08Add and lex LIFETIME tokensNiko Matsakis-16/+81
cc #4846
2013-02-07librustc: Lots of de-muting. rs=demutingPatrick Walton-79/+78
2013-02-07auto merge of #4791 : jbclements/rust/demodeing-and-deGCing, r=jbclements,brsonbors-44/+45
r? It looks to me like the string_reader and tt_reader structs are GC pointers only because they predate the modern borrow system. This commit leaves the type names string_reader and tt_reader alone (they still refer to GC-ed pointers), but internally the functions now use borrowed pointers to refer to these structures. My guess would be that it's possible to move this change outward and not use the GCed pointers at all, but that change looks like it could be a larger one. Actually, I'm delighted at how quick this change was.
2013-02-06libsyntax: no binary/hex float literalsKang Seonghoon-0/+7
2013-02-04demodeing, un-gc-ingJohn Clements-44/+45
It looks to me like the string_reader and tt_reader structs are GC pointers only because they predate the modern borrow system. This commit leaves the type names string_reader and tt_reader alone (they still refer to GC-ed pointers), but internally the functions now use borrowed pointers to refer to these structures. My guess would be that it's possible to move this change outward and not use the GCed pointers at all, but that change looks like it could be a larger one. Actually, I'm delighted at how quick this change was.
2013-02-03Converted libcore/uint-template.rs to the new string functions.Marvin Löbel-2/+2
- Moved ToStr implementation of unsigned integers to uint-template.rs. - Marked the `str()` function as deprecated. - Forwarded all conversion functions to `core::num::to_str_common()` and `core::num::from_str_common()`. - Fixed most places in the codebase where `to_str()` is being used. - Added uint-template to_str and from_str overflow tests.
2013-01-31test cases, cleanupJohn Clements-32/+81
2013-01-31Replace most invocations of fail keyword with die! macroNick Desaulniers-1/+1
2013-01-29libsyntax: De-export a lot of libsyntax. rs=deëxportingPatrick Walton-20/+17
2013-01-29libstd: Remove "dual impls" from the language and enforce coherence rules. ↵Patrick Walton-1/+1
r=brson "Dual impls" are impls that are both type implementations and trait implementations. They can lead to ambiguity and so this patch removes them from the language. This also enforces coherence rules. Without this patch, records can implement traits not defined in the current crate. This patch fixes this, and updates all of rustc to adhere to the new enforcement. Most of this patch is fixing rustc to obey the coherence rules, which involves converting a bunch of records to structs.
2013-01-23libsyntax: Remove `fn() unsafe { ... }`. r=graydonPatrick Walton-5/+7
2013-01-08librustc: Make unqualified identifier searches terminate at the nearest ↵Patrick Walton-1/+3
module scope. r=tjc
2013-01-08Revert "librustc: Make unqualified identifier searches terminate at the ↵Patrick Walton-3/+1
nearest module scope. r=tjc" This reverts commit a8d37af2473da79be704c9ce2374f278c47177b6.
2013-01-08librustc: Make unqualified identifier searches terminate at the nearest ↵Patrick Walton-1/+3
module scope. r=tjc
2012-12-27librustc: Terminate name searches at the nearest module scope for paths that ↵Patrick Walton-3/+14
contain at least two components. r=graydon
2012-12-12syntax: remove most code handling old-style syntax extensions.Graydon Hoare-5/+0
2012-12-04librustc: Remove all legacy pattern bindings from libsyntax and librustc. ↵Patrick Walton-2/+2
rs=refactoring
2012-12-03Update license, add license boilerplate to most files. Remainder will follow.Graydon Hoare-0/+10
2012-11-18Remove some unused code from lexerBrian Anderson-6/+2
2012-11-17Merge remote-tracking branch 'brson/codemap'Brian Anderson-41/+62
Conflicts: src/libsyntax/ext/source_util.rs
2012-11-16Remove unused types from codemapBrian Anderson-1/+1
2012-11-16Stop storing char positions in CodeMapBrian Anderson-18/+12
2012-11-16Change spans to use byte offsets instead of char offsetsBrian Anderson-8/+13
2012-11-15Add some comments to codemap and lexerBrian Anderson-0/+4
2012-11-15Refactor the lexer to use FilePos typesBrian Anderson-25/+43
2012-11-14Factor out some position management code in the lexerBrian Anderson-7/+7
2012-11-14Add types for character position and byte position in the codemapBrian Anderson-25/+25
2012-11-14Camel case all the codemap types except spanBrian Anderson-3/+3
2012-11-12Objectify the codemapBrian Anderson-4/+4
2012-11-12Remove CodeMap box typedef from codemapBrian Anderson-1/+1
2012-11-12Remove filemap box typedef from codemapBrian Anderson-3/+3
2012-11-12rustc: Implement floating point literal inference. r=nmatsakisPatrick Walton-1/+7
2012-10-15rustc: Merge module and type namespaces. r=brsonPatrick Walton-13/+13
2012-09-26turn ast::ident into a structErick Tryzelaar-6/+6
This will help with the auto_serialize2 migration. We have to change ident from a type alias to uint into a unique type. We need to use a struct instead of a "enum ident = token::str_num" because structs support constants, but newtypes do not.
2012-09-23core: Demode optionBrian Anderson-2/+2
2012-09-21libcore: De-mode strPatrick Walton-16/+19
2012-09-07Convert 'again' to 'loop'. Remove 'again' keywordBrian Anderson-1/+1
2012-09-07Add an ignore! macro, remove support for nested block comments, re: #2755.Graydon Hoare-12/+7
2012-09-04libsyntax: "import" -> "use"Patrick Walton-3/+3
2012-08-26Camel case the option typeBrian Anderson-12/+12
2012-08-24fix some unused pattern binding warningsNiko Matsakis-1/+1
2012-08-23`m1!{...}` -> `m1!(...)`Paul Stansifer-8/+8