summary refs log tree commit diff
path: root/src/libsyntax/ext
AgeCommit message (Collapse)AuthorLines
2013-09-06fixed a bug that caused double-expand-traversal of macros that expand into ↵John Clements-19/+10
modules.
2013-09-06WIP: adding mark-cancelling for macro_rulesJohn Clements-7/+47
2013-09-06comment on hygienic context extension train fnsJohn Clements-0/+11
2013-09-06awesome new bug! added test caseJohn Clements-13/+68
2013-09-06remove unneeded imports, clean up unused var warningsJohn Clements-9/+9
2013-09-06whitespace, reindentation, and comments onlyJohn Clements-19/+22
2013-09-06uncomment mtwt_resolve callsJohn Clements-2/+2
2013-09-06fix one remaining token comparison, refactor token comparison to avoid == checkJohn Clements-11/+10
2013-09-06remove dead codeJohn Clements-15/+0
2013-09-06capturing macros now implementedJohn Clements-85/+221
2013-09-06add fold_mac clause to fun_to_ctxt_folderJohn Clements-5/+12
2013-09-06WIP: adding context to macrosJohn Clements-9/+15
2013-09-06rework fold so that fold_tts takes an ast_fold rather than a thunk, stop ↵John Clements-45/+61
using closures in ident traversal
2013-09-06add temporarily unused ctxt field to mac_invoc_ttJohn Clements-3/+3
2013-09-06add test case for macro token comparisonJohn Clements-0/+4
2013-09-06marking on both input and output from macros. nice shiny new test case frameworkJohn Clements-29/+275
2013-09-06test case support fns, remove debugging test caseJohn Clements-3/+7
2013-09-06test case workJohn Clements-4/+2
2013-09-06re-add lost call to expand_block_eltsJohn Clements-1/+2
2013-09-06test case workJohn Clements-2/+10
2013-09-06use empty_ctxt to simplify downstreamJohn Clements-2/+5
2013-09-06make comparison of special_idents non-hygienicJohn Clements-2/+2
2013-09-06commentsJohn Clements-0/+3
2013-09-06remove FIXME #2888, now bug is fixedJohn Clements-11/+11
2013-09-06comments onlyJohn Clements-0/+8
2013-09-06adding test case to check marking/unmarkingJohn Clements-9/+17
2013-09-06separate ItemDecorator from ItemDecoratorJohn Clements-2/+2
2013-09-06removed unneccessary SyntaxExpander structsJohn Clements-33/+18
2013-09-06renaming test casesJohn Clements-6/+12
2013-09-06flip the switch on let renamingJohn Clements-1/+1
2013-09-06add hygiene support fns, move them around.John Clements-41/+164
also adds test cases
2013-09-06compare macro tokens hygienically (commented out)John Clements-1/+15
2013-09-06rename resolve to mtwt_resolveJohn Clements-3/+2
2013-09-05Remove the __log function for __log_levelAlex Crichton-53/+35
Also redefine all of the standard logging macros to use more rust code instead of custom LLVM translation code. This makes them a bit easier to understand, but also more flexibile for future types of logging. Additionally, this commit removes the LogType language item in preparation for changing how logging is performed.
2013-09-05Add an ``unreachable!()`` macro.Chris Morgan-0/+30
Rationale: having a function which fails means that the location of failure which is output is that of the unreachable() function, rather than the caller. This is part of #8991 but is not all of it; current usage of ``std::util::unreachable()`` must remain so for the moment, until a new snapshot is made; then I will remove that function entirely in favour of using this macro.
2013-09-04auto merge of #8977 : pnkfelix/rust/fsk-followup-on-6009-rebased, r=alexcrichtonbors-2/+1
Fix #6009. Rebased version of #8970. Inherits review from alexcrichton.
2013-09-04stop treating char as an integer typeDaniel Micay-5/+14
Closes #7609
2013-09-04Make non-pub condition! expand to non-pub mod. Fix #6009.Felix S. Klock II-2/+1
2013-09-03auto merge of #8963 : jmgrosen/rust/issue-8881, r=alexcrichtonbors-0/+8
2013-09-03Fixes #8881. condition! imports parent's pub identifiersjmgrosen-0/+8
2013-09-03auto merge of #8945 : alexcrichton/rust/ifmt-dont-move, r=thestingerbors-2/+6
2013-09-03Modernized a few more types in syntax::astMarvin Löbel-397/+397
2013-09-02Don't have format! move out of local variablesAlex Crichton-2/+6
2013-09-02Renamed syntax::ast::ident -> IdentMarvin Löbel-170/+170
2013-09-01Modernized a few type names in rustc and syntaxMarvin Löbel-371/+371
2013-08-27librustc: Fix merge fallout.Patrick Walton-1/+0
2013-08-27librustc: Ensure that type parameters are in the right positions in paths.Patrick Walton-9/+49
This removes the stacking of type parameters that occurs when invoking trait methods, and fixes all places in the standard library that were relying on it. It is somewhat awkward in places; I think we'll probably want something like the `Foo::<for T>::new()` syntax.
2013-08-27librustc: Add support for type parameters in the middle of paths.Patrick Walton-39/+54
For example, `foo::<T>::bar::<U>`. This doesn't enforce that the type parameters are in the right positions, however.
2013-08-24Introduce alternate forms of loggingAlex Crichton-23/+30
These new macros are all based on format! instead of fmt! and purely exist for bootstrapping purposes. After the next snapshot, all uses of logging will be migrated to these macros, and then after the next snapshot after that we can drop the `2` suffix on everything
2013-08-24Settle on the format/write/print family of namesAlex Crichton-11/+36