about summary refs log tree commit diff
path: root/src/libsyntax/parse
AgeCommit message (Collapse)AuthorLines
2013-06-21libsyntax: cleanup warningsJames Miller-3/+1
2013-06-21Remove all #[cfg(stage0)]-protected codeJames Miller-166/+0
New snapshot means this can all go. Also removes places that have comments that say they are workarounds for stage0 errors.
2013-06-20libsyntax: Remove `drop` as a keyword.Luqman Aden-35/+202
2013-06-18replace #[inline(always)] with #[inline]. r=burningtree.Graydon Hoare-1/+1
2013-06-16Do not strip leading whitespace when parsing doc comments.SiegeLord-23/+65
This change prevents the indentation in code blocks inside the /// doc comments from being eaten. The indentation that is the same across the consecutive doc comments is removed by the uindent_pass in librustdoc.
2013-06-16auto merge of #7123 : huonw/rust/more-str, r=thestingerbors-8/+6
Moves all the remaining functions that could reasonably be methods to be methods, except for some FFI ones (which I believe @erickt is working on, possibly) and `each_split_within`, since I'm not really sure the details of it (I believe @kimundi wrote the current implementation, so maybe he could convert it to an external iterator method on `StrSlice`, e.g. `word_wrap_iter(&self) -> WordWrapIterator<'self>`, where `WordWrapIterator` impls `Iterator<&'self str>`. It probably won't be too hard, since it's already a state machine.) This also cleans up the comparison impls for the string types, except I'm not sure how the lang items `eq_str` and `eq_str_uniq` need to be handled, so they (`eq_slice` and `eq`) remain stand-alone functions.
2013-06-15auto merge of #7114 : pnkfelix/rust/issue3961-fix-whitespace-detection, r=brsonbors-14/+23
r? (yes, the review request is back, now that I got it building against incom... I mean master!) (Attempting to port from orphaned pull-request #6764 ) Fix for #3961. Also includes a test case to illustrate the issues. (All of the entries that say "should align" should align with each other, and the four lines near the end that say "compare _" for _ in {A,B,C,D} should line up with each other.) Before applying this change set: -- the "(should align)"'s are all over the place, and the form/line feeding spaces are not cut out as one might or might not expect. -- compare B and D do not match A and C. (To be honest, its hard to really say what the right behavior is here, and people who are expecting a particular behavior out of a pretty printer in these cases may well get burned.)
2013-06-16std: convert str::{map,levdistance,subslice_offset} to methods.Huon Wilson-8/+6
The first two become map_chars and lev_distance. Also, remove a few allocations in rustdoc.
2013-06-14add IteratorUtil to the preludeDaniel Micay-3/+0
2013-06-14fixed code to placate new restrictions on form of function/method invocations.Felix S. Klock II-1/+1
2013-06-13Fix #3961 : use char range methods instead of byte offsets to detect whitespace.Felix S. Klock II-14/+23
2013-06-13Use @str instead of @~str in libsyntax and librustc. Fixes #5048.Huon Wilson-106/+89
This almost removes the StringRef wrapper, since all strings are Equiv-alent now. Removes a lot of `/* bad */ copy *`'s, and converts several things to be &'static str (the lint table and the intrinsics table). There are many instances of .to_managed(), unfortunately.
2013-06-12libsyntax: Remove duplicate methods.Luqman Aden-7/+0
2013-06-12std: convert str::escape_* to methods.Huon Wilson-1/+1
2013-06-11lexer: show correct span on unrecognized token startPhilipp Brüschweiler-1/+5
Fixes part of #7048.
2013-06-10std: remove str::{connect,concat}*.Huon Wilson-4/+2
2013-06-10clean-up unused import warningsHuon Wilson-2/+1
2013-06-10std: convert str::char_at* to methods.Huon Wilson-2/+2
2013-06-10std: convert str::reserve* to methods, and methodise str::push_*.Huon Wilson-19/+16
2013-06-10std: replace str::{any,all}_between with the iterator equivalent.Huon Wilson-1/+1
2013-06-10std: remove str::{len, slice, is_empty} in favour of methods.Huon Wilson-5/+5
2013-06-10std: replace str::all/any fns and methods with iteratorsHuon Wilson-1/+2
2013-06-10std: replace str::each_split* with an iteratorHuon Wilson-6/+5
2013-06-08remove deprecated vec::{is_empty, len} functionsDaniel Micay-2/+2
2013-06-08auto merge of #7004 : dotdash/rust/allocs, r=thestingerbors-44/+60
This removes some unnecessary allocations in the lexer, the typechecker and the metadata decoder. Reduces the time spent in the parsing and typechecking passes by about 10% for me.
2013-06-09remove unused import warningsHuon Wilson-4/+1
2013-06-09std: remove each_char* fns and methods from str, replaced by iterators.Huon Wilson-2/+3
2013-06-08Lexer: Fix offset handling in get_str_from()Björn Steinbrink-10/+8
As the comment said, the subtraction is bogus for multibyte characters. Fortunately, we can just use last_pos instead of pos to get the correct position without any subtraction hackery.
2013-06-08Lexer: Avoid unnecessary allocationsBjörn Steinbrink-42/+57
2013-06-08Avoid unnecessary (re-)allocations in the lexerBjörn Steinbrink-7/+8
2013-06-06auto merge of #6982 : Aatch/rust/better-foreign-error, r=pcwaltonbors-2/+2
I encountered this. A straight fail is not useful and most people aren't going to happily spelunk in `parser.rs`
2013-06-07Provide an actual error when expanding macros to foreign itemsJames Miller-2/+2
2013-06-06Clean up a handful of build warnings.Michael Sullivan-2/+2
2013-06-06Deduplicate words in code commentsAlexei Sholik-1/+1
2013-06-05added fresh-name fnJohn Clements-0/+28
2013-06-05add hygiene support functionsJohn Clements-22/+12
2013-06-05remove unused get_ident_interner'sJohn Clements-1/+2
2013-06-05removed unused imports (and one unused argument)John Clements-6/+3
2013-06-05remove interner field from string_readerJohn Clements-28/+16
2013-06-05remove interner from tt_readerJohn Clements-1/+0
2013-06-05token_to_ident takes argument by referenceJohn Clements-7/+7
2013-06-05interner just uses uints, not idents with syntax contextJohn Clements-49/+71
2013-06-05removed some interner fieldsJohn Clements-9/+0
2013-06-05just use TLS internerJohn Clements-25/+29
2013-06-05rename repr to nameJohn Clements-82/+82
2013-06-05change to newer macro escape mechanism, using uints in more placesJohn Clements-13/+28
2013-06-04librustc: Disallow multiple patterns from appearing in a "let" declaration.Patrick Walton-11/+27
You can still initialize multiple variables at once with "let (x, y) = (1, 2)".
2013-06-04libsyntax: Remove `pub impl` from the languagePatrick Walton-11/+9
2013-06-01syntax: move callee_id into the expr_ variantsErick Tryzelaar-38/+60
2013-06-01Remove all uses of `pub impl`. rs=stylePatrick Walton-184/+177