Steven Fackler
c144752a2d
Support multiple item macros
...
Closes #4375
2013-11-26 13:56:02 -08:00
Patrick Walton
efc512362b
libsyntax: Remove all non-proc
do
syntax.
2013-11-26 08:24:18 -08:00
Seo Sanghyeon
8470639319
Remove ty_mac
2013-11-21 22:59:56 +09:00
Patrick Walton
492677ec1e
libsyntax: Change all uses of &fn
to ||
.
2013-11-19 12:40:19 -08:00
Brian Anderson
85f107d8cb
Use '..' as slice wildcard in vectors
2013-11-18 16:19:48 -08:00
Niko Matsakis
1f4faaee40
Generalize AST and ty::Generics to accept multiple lifetimes.
2013-11-08 19:42:46 -05:00
Luqman Aden
c669ccf3d3
libsyntax/librustc: Allow calling variadic foreign functions.
2013-11-04 23:53:11 -05:00
Patrick Walton
7e77bf1769
librustc: Implement the proc
type as sugar for ~once fn
and proc
...
notation for closures, and disable the feature gate for `once fn` if
used with the `~` sigil.
2013-10-29 10:34:17 -07:00
Joshua Yanovski
01ab8542fb
Field identifiers now include specific spans ( Closes #8263 ).
2013-10-28 22:57:34 -07:00
Luqman Aden
12308db3d2
libsyntax/librustc: Allow mut qualifier in patterns.
2013-10-25 01:21:07 -04:00
Alex Crichton
daf5f5a4d1
Drop the '2' suffix from logging macros
...
Who doesn't like a massive renaming?
2013-10-22 08:09:56 -07:00
Alex Crichton
b70306158f
Remove named extern blocks from the AST
...
There's currently a fair amount of code which is being ignored on unnamed blocks
(which are the default now), and I opted to leave it commented out for now. I
intend on very soon revisiting on how we perform linking with extern crates in
an effort to support static linking.
2013-10-10 18:04:58 -07:00
Daniel Micay
6a90e80b62
option: rewrite the API to use composition
2013-10-09 09:17:29 -04:00
Alex Crichton
af3b132285
syntax: Remove usage of fmt!
2013-09-30 23:21:19 -07:00
Alex Crichton
7b18976f08
Remove all usage of @ast::Crate
2013-09-29 16:21:25 -07:00
Patrick Walton
90d3da9711
test: Fix rustdoc and tests.
2013-09-23 18:23:22 -07:00
Patrick Walton
9a4de3f305
libsyntax: Introduce routines and remove all @fn
s from libsyntax save the old visitor
2013-09-23 18:23:21 -07:00
Patrick Walton
3e5de06135
librustc: Change fold to use traits instead of @fn
.
2013-09-23 18:23:17 -07:00
Brian Anderson
c62919f607
Work around a compiler crash folding labeled break. #9129
...
Servo is hitting this problem, so this is a workaround for a lack of a real solution.
2013-09-13 16:00:18 -07:00
John Clements
422cf1adc5
change type of ExprLoop and ExprBreak elts from ident->name.
...
Lots of downstream changes in librustc, should be infinitesimally faster.
2013-09-10 14:12:54 -07:00
Niko Matsakis
a5ad4c3794
Delay assignment of node ids until after expansion. Ensures that each AST node
...
has a unique id. Fixes numerous bugs in macro expansion and deriving. Add two
representative tests.
Fixes #7971
Fixes #6304
Fixes #8367
Fixes #8754
Fixes #8852
Fixes #2543
Fixes #7654
2013-09-10 05:45:12 -04:00
bors
059cbaadfa
auto merge of #9005 : alexcrichton/rust/rusty-log, r=brson
...
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-09 10:41:05 -07:00
Huon Wilson
07351b44c6
syntax: implement labelled breaks for for
.
...
`for` desugars to `loop` so it is trivial to just desugar to `loop` while
retaining any label.
2013-09-08 22:08:01 +10:00
John Clements
4664d3320d
comment fix
2013-09-06 13:35:14 -07:00
John Clements
b9bb4abcb6
capturing macros now implemented
2013-09-06 13:35:11 -07:00
John Clements
dfa04cecca
add fold_mac field to fold.rs
2013-09-06 13:35:10 -07:00
John Clements
34f31e2961
rework fold so that fold_tts takes an ast_fold rather than a thunk, stop using closures in ident traversal
2013-09-06 13:35:10 -07:00
John Clements
09e6dda4f2
add temporarily unused ctxt field to mac_invoc_tt
2013-09-06 13:35:10 -07:00
John Clements
cd4e637ae4
fixed bug in fold's traversal of cast exprs
2013-09-06 13:35:09 -07:00
John Clements
d876a721d2
new test that uncovers bug in fold
2013-09-06 13:35:09 -07:00
John Clements
9de40dfc87
remove FIXME #2888 , now bug is fixed
2013-09-06 13:35:08 -07:00
John Clements
91d3c36430
adding test case to check marking/unmarking
2013-09-06 13:35:08 -07:00
John Clements
b7c0512b27
refactor so tt_fold only requires an ident->ident fn
2013-09-06 13:35:08 -07:00
Alex Crichton
8a966183fe
Remove the __log function for __log_level
...
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-05 01:48:20 -07:00
Marvin Löbel
7419085337
Modernized a few more types in syntax::ast
2013-09-03 14:45:06 +02:00
Marvin Löbel
857f867320
Renamed syntax::ast::ident -> Ident
2013-09-02 02:51:21 +02:00
Marvin Löbel
539f37925c
Modernized a few type names in rustc and syntax
2013-09-01 14:43:26 +02:00
bors
7971c46c44
auto merge of #8718 : bblum/rust/typeof, r=pcwalton
...
r? anybody
2013-08-28 15:30:38 -07:00
Patrick Walton
3b6314c39b
librustc: Add support for type parameters in the middle of paths.
...
For example, `foo::<T>::bar::<U>`.
This doesn't enforce that the type parameters are in the right
positions, however.
2013-08-27 18:46:51 -07:00
Ben Blum
e9f6f3f2cc
Parse and reserve typeof keyword. #3228
2013-08-23 17:24:14 -04:00
Erick Tryzelaar
68f40d215e
std: Rename Iterator.transform -> .map
...
cc #5898
2013-08-10 07:33:21 -07:00
Erick Tryzelaar
fad7857c7b
Mass rename of .consume{,_iter}() to .move_iter()
...
cc #7887
2013-08-10 07:01:07 -07:00
Erick Tryzelaar
1e490813b0
core: option.map_consume -> option.map_move
2013-08-07 08:52:09 -07:00
Daniel Micay
e7bb33aed8
rm obsolete for
support from the compiler
2013-08-04 00:39:48 -04:00
Daniel Micay
1008945528
remove obsolete foreach
keyword
...
this has been replaced by `for`
2013-08-03 22:48:02 -04:00
Patrick Walton
9457ebee55
librustc: Disallow "unsafe" for external functions
2013-08-02 21:57:59 -07:00
Daniel Micay
1fc4db2d08
migrate many for
loops to foreach
2013-08-01 05:34:55 -04:00
Daniel Micay
dabd476203
make in
and foreach
get treated as keywords
2013-08-01 00:21:13 -04:00
Graydon Hoare
c29e9fb60b
syntax: implement foreach .. in .. { .. } via desugaring.
2013-07-30 18:50:28 -07:00
Michael Woerister
8a329770b6
New naming convention for ast::{node_id, local_crate, crate_node_id, blk_check_mode, ty_field, ty_method}
2013-07-29 16:16:48 +02:00