| Age | Commit message (Collapse) | Author | Lines | |
|---|---|---|---|---|
| 2016-11-22 | Start warning cycle. | Jeffrey Seyfried | -1/+1 | |
| 2016-11-22 | Clean up directory ownership semantics. | Jeffrey Seyfried | -22/+28 | |
| 2016-11-21 | Cleanup `InternedString`. | Jeffrey Seyfried | -5/+4 | |
| 2016-11-21 | Use `Symbol` instead of `InternedString` in the AST, HIR, and various other ↵ | Jeffrey Seyfried | -26/+21 | |
| places. | ||||
| 2016-11-20 | Move `syntax::util::interner` -> `syntax::symbol`, cleanup. | Jeffrey Seyfried | -29/+30 | |
| 2016-11-20 | Refactor `P<ast::MetaItem>` -> `ast::MetaItem`. | Jeffrey Seyfried | -10/+10 | |
| 2016-11-20 | Refactor `MetaItemKind` to use `Name`s instead of `InternedString`s. | Jeffrey Seyfried | -11/+11 | |
| 2016-11-20 | Refactor away `ast::Attribute_`. | Jeffrey Seyfried | -4/+4 | |
| 2016-11-17 | Resolve imports during expansion. | Jeffrey Seyfried | -2/+13 | |
| 2016-11-12 | Remove extra level of nesting. | Mark-Simulacrum | -35/+32 | |
| 2016-11-12 | Move next_eis out of main loop to avoid re-allocating and dropping it. | Mark-Simulacrum | -1/+2 | |
| 2016-11-12 | Use SmallVector for eof and bb eis. | Mark-Simulacrum | -6/+4 | |
| 2016-11-12 | Factor out inner current Earley item loop. | Mark-Simulacrum | -146/+153 | |
| Change multiple functions to be non-public. Change nameize to accept an iterator so as to avoid an allocation. | ||||
| 2016-11-12 | Refactor parse_nt. | Mark-Simulacrum | -8/+13 | |
| 2016-11-12 | Factor out NamedParseResult. | Mark-Simulacrum | -4/+3 | |
| 2016-11-12 | Clean up extraneous &mut. | Mark-Simulacrum | -1/+1 | |
| 2016-11-12 | Refactor to extending from a drain instead of while looping. | Mark-Simulacrum | -3/+1 | |
| 2016-11-12 | Remove unused argument from nameize. | Mark-Simulacrum | -6/+6 | |
| Also makes nameize non-public since it's only locally used. | ||||
| 2016-11-12 | Cleanup macro_parser::parse, removing a few clones. | Mark-Simulacrum | -51/+35 | |
| 2016-11-11 | Change implementation of syntax::util::SmallVector to use ↵ | Mark-Simulacrum | -11/+11 | |
| data_structures::SmallVec. | ||||
| 2016-11-11 | Auto merge of #37246 - goffrie:no-loop, r=jseyfried | bors | -1/+3 | |
| Don't spin expanding stmt macros. If we can't make progress when parsing a macro expansion as a statement then we should just bail. This alleviates the symptoms shown in e.g. #37113 and #37234 but it doesn't fix the problem that parsing invalid enum bodies (and others) leaves the parser in a crappy state. I'm not sold on this strategy (checking `tokens_consumed`), so if anyone has a better idea, I'm all ears! | ||||
| 2016-11-10 | Elimite `$crate` before invokng custom derives. | Jeffrey Seyfried | -0/+2 | |
| 2016-11-10 | syntax: don't fake a block around closures' bodies during parsing. | Eduard Burtescu | -30/+15 | |
| 2016-11-04 | Remove field `TtReader::next_tok`. | Jeffrey Seyfried | -5/+0 | |
| 2016-11-04 | Improve `tt`-heavy expansion performance. | Jeffrey Seyfried | -4/+15 | |
| 2016-11-03 | Move doc comment desugaring into the parser. | Jeffrey Seyfried | -28/+2 | |
| 2016-11-03 | Avoid recontructing the `Parser` in `macro_parser.rs`. | Jeffrey Seyfried | -21/+16 | |
| 2016-11-03 | Revert "macros: Improve `tt` fragments" | Jeffrey Seyfried | -13/+3 | |
| This reverts commit 41745f30f751364bdce14428b7d3ffa5dd028903. | ||||
| 2016-11-03 | Reduce the size of `Token` and make it cheaper to clone by refactoring | Jeffrey Seyfried | -50/+63 | |
| `Token::Interpolated(Nonterminal)` -> `Token::Interpolated(Rc<Nonterminal>)`. | ||||
| 2016-10-31 | Changed most vec! invocations to use square braces | iirelu | -47/+47 | |
| Most of the Rust community agrees that the vec! macro is clearer when called using square brackets [] instead of regular brackets (). Most of these ocurrences are from before macros allowed using different types of brackets. There is one left unchanged in a pretty-print test, as the pretty printer still wants it to have regular brackets. | ||||
| 2016-10-29 | Move `CrateConfig` from `Crate` to `ParseSess`. | Jeffrey Seyfried | -40/+11 | |
| 2016-10-28 | Auto merge of #37373 - nnethercote:html5ever-more-more, r=nrc | bors | -11/+10 | |
| Avoid more allocations when compiling html5ever These three commits reduce the number of allocations performed when compiling html5ever from 13.2M to 10.8M, which speeds up compilation by about 2%. r? @nrc | ||||
| 2016-10-26 | Don't spin expanding stmt macros. | Geoffry Song | -1/+3 | |
| If we can't make progress when parsing a macro expansion as a statement then we should just bail. This alleviates the symptoms shown in e.g. #37113 but it doesn't fix the problem that parsing invalid enum bodies (and others) leaves the parser in a crappy state. | ||||
| 2016-10-27 | Implement field shorthands in struct literal expressions. | Eduard Burtescu | -1/+1 | |
| 2016-10-25 | Don't use `Rc` in `TokenTreeOrTokenTreeVec`. | Nicholas Nethercote | -3/+3 | |
| This avoids 800,000 allocations when compiling html5ever. | ||||
| 2016-10-25 | Use `SmallVector` for `TtReader::stack`. | Nicholas Nethercote | -3/+4 | |
| This avoids 800,000 heap allocations when compiling html5ever. It requires tweaking `SmallVector` a little. | ||||
| 2016-10-25 | Use `SmallVector` for the stack in `macro_parser::parse`. | Nicholas Nethercote | -6/+4 | |
| This avoids 800,000 heap allocations when compiling html5ever. | ||||
| 2016-10-24 | Refactor away fields `MacroDef::{use_locally, export}`. | Jeffrey Seyfried | -5/+4 | |
| 2016-10-22 | Auto merge of #37318 - nnethercote:html5ever-more, r=nrc,eddyb | bors | -14/+26 | |
| Avoid some allocations in the macro parser These three commits reduce the number of heap allocations done when compiling rustc-benchmarks/html5ever-2016-08-25 by 20%, from 16.5M to 13.3M. This speeds up (debug) compilation of it with a stage1 compiler by about 7%. | ||||
| 2016-10-21 | Replace the `String` in `ParseResult::Failure` with `Token`. | Nicholas Nethercote | -13/+25 | |
| This lets us delay creation of failure messages until they are needed, which avoids ~1.6M allocations in html5ever. | ||||
| 2016-10-21 | Avoid an unnecessary clone in `generic_extensions`. | Nicholas Nethercote | -2/+2 | |
| This avoids ~800,000 allocations in html5ever. | ||||
| 2016-10-21 | Avoid an unnecessary clone in `macro_parser::parse`. | Nicholas Nethercote | -1/+1 | |
| This avoids ~800,000 allocations in html5ever. | ||||
| 2016-10-19 | Improve `$crate`. | Jeffrey Seyfried | -39/+6 | |
| 2016-10-19 | Rollup merge of #37208 - jseyfried:fix_partially_consumed_tokens_in_macros, ↵ | Eduard-Mihai Burtescu | -12/+14 | |
| r=nrc macros: fix partially consumed tokens in macro matchers Fixes #37175. This PR also avoids re-transcribing the tokens consumed by a matcher (and cloning the `TtReader` once per matcher), which improves expansion performance of the test case from #34630 by ~8%. r? @nrc | ||||
| 2016-10-19 | Rollup merge of #37198 - jseyfried:future_proof_macros_11, r=nrc | Eduard-Mihai Burtescu | -7/+30 | |
| macros 1.1: future proofing and cleanup This PR - uses the macro namespace for custom derives (instead of a dedicated custom derive namespace), - relaxes the shadowing rules for `#[macro_use]`-imported custom derives to match the shadowing rules for ordinary `#[macro_use]`-imported macros, and - treats custom derive `extern crate`s like empty modules so that we can eventually allow, for example, `extern crate serde_derive; use serde_derive::Serialize;` backwards compatibly. r? @alexcrichton | ||||
| 2016-10-17 | Fix partially consumed tokens in macro matchers. | Jeffrey Seyfried | -12/+14 | |
| 2016-10-15 | Use the macro namespace for custom derives. | Jeffrey Seyfried | -3/+16 | |
| 2016-10-15 | Refactor `syntax::ext::base::Resolver::resolve_invoc`. | Jeffrey Seyfried | -4/+14 | |
| 2016-10-14 | Avoid many CrateConfig clones. | Nicholas Nethercote | -11/+15 | |
| This commit changes `ExtCtx::cfg()` so it returns a `CrateConfig` reference instead of a clone. As a result, it also changes all of the `cfg()` callsites to explicitly clone... except one, because the commit also changes `macro_parser::parse()` to take `&CrateConfig`. This is good, because that function can be hot, and `CrateConfig` is expensive to clone. This change almost halves the number of heap allocations done by rustc for `html5ever` in rustc-benchmarks suite, which makes compilation 1.20x faster. | ||||
| 2016-10-11 | Add support for undetermined macro invocations. | Jeffrey Seyfried | -6/+37 | |
