about summary refs log tree commit diff
path: root/src/libsyntax
AgeCommit message (Collapse)AuthorLines
2013-06-14Implement a deriving(Zero) attributeAlex Crichton-0/+98
2013-06-14fixed code to placate new restrictions on form of function/method invocations.Felix S. Klock II-1/+1
2013-06-13Revert "std: convert {vec,str}::to_owned to methods."Brian Anderson-8/+16
This fixes the strange random crashes in compile-fail tests. This reverts commit 96cd61ad034cc9e88ab6a7845c3480dbc1ea62f3. Conflicts: src/librustc/driver/driver.rs src/libstd/str.rs src/libsyntax/ext/quote.rs
2013-06-14syntax: revert the uint -> u32 "fix"; make the names/comment match.Huon Wilson-4/+4
2013-06-14syntax: correct the Rand::rand call to select enum variants in ↵Huon Wilson-4/+5
#[deriving(Rand)]. Previously, this was not a global call, and so when `#[deriving(Rand)]` was in any module other than the top-level one, it failed (unless there was a `use std;` in scope). Also, fix a minor inconsistency between uints and u32s for this piece of code.
2013-06-13automated whitespace fixesDaniel Micay-1/+0
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-451/+432
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-12Fix a test-predicated use of the visit.rs api.Felix S. Klock II-1/+1
2013-06-12Fix linebreak and whitespace issues to placate make tidy.Felix S. Klock II-1/+2
2013-06-12Visitor refactoring: Step 1, couple (Env, vt<Env>) together in a tuple.Felix S. Klock II-337/+323
2013-06-12libsyntax: Remove duplicate methods.Luqman Aden-7/+0
2013-06-12std: convert str::escape_* to methods.Huon Wilson-3/+2
2013-06-12std: unify the str -> [u8] functions as 3 methods: .as_bytes() and ↵Huon Wilson-9/+0
.as_bytes_with_null[_consume](). The first acts on &str and is not nul-terminated, the last two act on strings that are always null terminated (&'static str, ~str and @str).
2013-06-12std: convert {vec,str}::to_owned to methods.Huon Wilson-11/+9
2013-06-11option: remove redundant old_iter implsDaniel Micay-23/+36
2013-06-11lexer: show correct span on unrecognized token startPhilipp Brüschweiler-1/+5
Fixes part of #7048.
2013-06-11fix tests, remove some warningsHuon Wilson-7/+2
2013-06-10std: remove str::{connect,concat}*.Huon Wilson-22/+15
2013-06-10clean-up unused import warningsHuon Wilson-3/+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/+19
2013-06-10std: replace str::{any,all}_between with the iterator equivalent.Huon Wilson-1/+1
2013-06-10std: convert character-based str::find_* to methods. Add .slice_{to,from} ↵Huon Wilson-6/+5
methods.
2013-06-10std: remove str::{len, slice, is_empty} in favour of methods.Huon Wilson-13/+12
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-5/+5
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-16/+11
2013-06-09std: replace the str::each* fns/methods with byte iteratorsHuon Wilson-1/+2
2013-06-09std: remove each_char* fns and methods from str, replaced by iterators.Huon Wilson-2/+3
2013-06-09std: remove foldr and alli methods in vecHuon Wilson-7/+9
2013-06-09std: remove fold[lr] in favour of iteratorsHuon Wilson-12/+12
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-08std: remove each[i]_mut functions, in favour of iterators.Huon Wilson-3/+4
2013-06-08std: remove vec::each2 and vec::each2_mut in favour of iteratorsHuon Wilson-2/+3
2013-06-07syntax: correct the modifications to deriving(Ord) so that it works.Huon Wilson-30/+13
2013-06-07syntax: rewrite deriving(Ord) to not require Eq.Huon Wilson-57/+59
lt and gt are implement directly in terms of the corresponding method on their elements, and le and ge are the negations of these.
2013-06-07syntax: move expand_generic_deriving to be a method on TraitDefHuon Wilson-55/+37
2013-06-07syntax: move functions from deriving/mod to deriving/generic.Huon Wilson-277/+199
These are now only called in generic and can be private. This includes manually inlining/merging some that are called once.
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-06implement fold traversing macrosJohn Clements-3/+38
2013-06-06add test cases for fold traversing macrosJohn Clements-0/+150
2013-06-06Clean up a handful of build warnings.Michael Sullivan-13/+13
2013-06-06Deduplicate words in code commentsAlexei Sholik-3/+3
2013-06-05moved TLS of sctable to ast_util, hid parameter in hygiene callsJohn Clements-81/+103