Tim Chevalier
f675b97ddc
Merge pull request #4144 from luqmana/deprecated-attribute
...
Add deprecated attribute.
2012-12-10 21:16:20 -08:00
Tim Chevalier
0046ed9462
Remove un-needed code for obsolete classes
...
and rename "class" to "struct" everywhere possible (except local
vars, I was too lazy for that) -- that is why this commit is so
big.
No review, just dead code removal and renaming.
Closes #3515
2012-12-10 18:45:01 -08:00
Brian Anderson
3fcdb7d6a7
Adjust the die macro to only accept ~str and to work in statement position
2012-12-10 18:16:22 -08:00
Graydon Hoare
12c32e944d
Add license boilerplate to more files.
2012-12-10 17:32:58 -08:00
Brian Anderson
9723d3ac2f
Remove transitional code
2012-12-09 17:59:21 -08:00
Luqman Aden
4b4c8331bb
Add deprecated attribute.
2012-12-09 02:26:12 -05:00
Patrick Walton
98fdcb0b9d
librustc: De-mode pattern bindings. r=nmatsakis
2012-12-07 19:34:57 -08:00
Patrick Walton
184f5102b3
libsyntax: Fix parsing of module-qualified structure patterns. rs=bugfix
2012-12-07 19:10:16 -08:00
Patrick Walton
ab3b752906
librustc: Implement "&mut [T]" as an expression. r=brson
2012-12-07 18:29:10 -08:00
Brian Anderson
87f3ea7705
Fix pretty-printing of trait constraints
2012-12-07 17:55:34 -08:00
Brian Anderson
10c9d7921d
Trait constraints are separated by space, not comma
2012-12-07 15:54:17 -08:00
Brian Anderson
ecdc8aae41
Remove impl_id from trait_ref. Unused
2012-12-07 15:54:17 -08:00
Graydon Hoare
d78053ecb0
syntax: try to fix pattern printing yet again, r=burningtree.
2012-12-07 14:39:47 -08:00
Graydon Hoare
28cce241dc
syntax: try to fix pattern printing harder, r=burningtree.
2012-12-07 12:52:01 -08:00
Graydon Hoare
5bdbfa41e6
syntax: pretty print bind_by_value patterns as "copy", r=burningtree.
2012-12-07 12:29:46 -08:00
Graydon Hoare
09573ea8cf
syntax: stage0-guard uses of #ast, rewrite as quote_foo! in stage1,2.
2012-12-07 11:21:14 -08:00
Graydon Hoare
a6fcfd726b
syntax: fix missing push in item macro expansion
2012-12-07 11:21:14 -08:00
Graydon Hoare
70e0c6e27d
syntax: Permit splicing anything into a quote that implements ToTokens.
2012-12-07 11:21:14 -08:00
Graydon Hoare
7e9872058e
syntax: fix quote_type! to quote_ty!
2012-12-07 11:21:14 -08:00
Graydon Hoare
d45cb27901
syntax: point quote tokens at the site of quote-using-extension invocation.
2012-12-07 11:21:14 -08:00
Graydon Hoare
9f27bf7deb
syntax: fix the accidental binding of interner state between parse and quote.
2012-12-07 11:21:14 -08:00
Graydon Hoare
65db4315ab
syntax: fix a pp bug on foreign mods.
2012-12-07 11:21:14 -08:00
Tim Chevalier
58a4a3700d
Revert "Print copy patterns correctly"
...
This reverts commit ea6819637382e7f8979766b954dd2a1922d0dee0.
2012-12-06 22:36:32 -08:00
Tim Chevalier
f070e22360
Print copy patterns correctly
2012-12-06 21:53:25 -08:00
Brian Anderson
4ab1c8805a
Convert Num to explicit self
2012-12-05 19:23:13 -08:00
Patrick Walton
1282fc8074
librustc: Hook borrow check loan checking up to the moves-based-on-type infrastructure. rs=helps-unbreak-the-build
2012-12-05 15:07:48 -08:00
Patrick Walton
b8cfd5c414
librustc: Long lines. rs=rustbot
2012-12-04 21:13:02 -08:00
Patrick Walton
33c1e47c1b
librustc: Implement moves based on type. r=nmatsakis
2012-12-04 15:38:04 -08:00
Patrick Walton
56ece46f7d
librustc: Remove all legacy pattern bindings from libsyntax and librustc. rs=refactoring
2012-12-04 14:19:19 -08:00
Graydon Hoare
94be145169
core: rename box to managed. Close #4079 .
2012-12-03 17:45:19 -08:00
Graydon Hoare
00c856c0b1
Update license, add license boilerplate to most files. Remainder will follow.
2012-12-03 17:12:14 -08:00
Patrick Walton
f34833abfc
librustc: Make a.b()
always a method call. r=nmatsakis
2012-11-30 20:41:46 -08:00
Tim Chevalier
daf28a421a
Disallow dereferencing enum types when the variant is private
...
If an enum type's only variant is private, disallow dereferencing
values of its type.
Due to #4082 , this only applies to enums that are in the same crate.
r=pcwalton
Closes #818
2012-11-30 12:45:10 -08:00
Graydon Hoare
d783f4d7bb
libs: Remove transitionary material on iter_bytes, add workcache to build.
2012-11-30 10:33:16 -08:00
Brian Anderson
3ed9fbd63c
impls of traits cannot define methods on the anonymous trait
2012-11-29 22:07:49 -08:00
Patrick Walton
a0617eae68
librustc: Eliminate most expressions of the form a.b()
that are not method calls. rs=refactoring
2012-11-29 17:51:56 -08:00
Graydon Hoare
ce24d37759
syntax: slight improvement in fidelity of printing tokens. Still not great.
2012-11-29 12:09:11 -08:00
Paul Stansifer
7051d622c0
Properly sync macro_parser.rs after it escapes out to the Rust parser. Closes #3201 .
2012-11-29 12:09:11 -08:00
Paul Stansifer
9ff8d18766
Fix trace_macros so that it works.
2012-11-29 12:09:11 -08:00
Paul Stansifer
15e03e1e5e
Forbid attrs on macros, since we don't handle them properly yet.
2012-11-29 12:09:11 -08:00
Paul Stansifer
6174a30d7c
Respect semicolons always when expanding statments.
2012-11-29 12:09:11 -08:00
Paul Stansifer
45bcb10204
Forbid item macros from occuring where statement macros might occur, and allow item macros to look like statement/expr macros.
2012-11-29 12:09:10 -08:00
Paul Stansifer
0f707f42c8
Distinguish stmt_mac
s that are followed by semicolons and those that aren't.
2012-11-29 12:09:10 -08:00
Paul Stansifer
e77491bd87
Make the parser handle stmt macros that might be exprs at the end of blocks.
2012-11-29 12:09:10 -08:00
Paul Stansifer
bd92499c5e
Allow parsing of macros in statement position.
2012-11-29 12:09:10 -08:00
Paul Stansifer
9814e58815
No longer parse the delimiters of the RHS of a macro as part of the expansion.
2012-11-29 12:09:10 -08:00
Paul Stansifer
ba354b1726
Allow the expansion of old-style expr macros in stmt position.
2012-11-29 12:09:10 -08:00
Paul Stansifer
b7fcc9b52e
Use biased_match!
to avoid over-deep indentation in expand.rs.
2012-11-29 12:09:10 -08:00
Paul Stansifer
cf26a7d7b9
Make it possible to expand stmt macros.
2012-11-29 12:09:10 -08:00
Paul Stansifer
ee076f63f9
Allow for macros to occur in statement position.
2012-11-29 12:09:10 -08:00
Paul Stansifer
fca52554e7
Make it possible to invoke item macros without passing identifier arguments.
2012-11-29 12:09:10 -08:00
Paul Stansifer
cafea5ecb6
Grammaticalinate an error message.
2012-11-29 12:09:10 -08:00
Paul Stansifer
9845a4be5a
Allow macro_rules!
macros to expand to expressions or items.
2012-11-29 12:09:10 -08:00
Patrick Walton
c946c87b6f
libsyntax: Remove the "by-mutable-ref" obsolete syntax error; it blocks useful function argument patterns. Add a test for the latter. r=brson
2012-11-29 12:06:36 -08:00
Brian Anderson
5a282ec26f
core: Convert some records to structs
2012-11-28 21:50:09 -08:00
Brian Anderson
65bd40e300
Remove uses of #[merge]
2012-11-28 17:09:26 -08:00
Brian Anderson
16f72df704
Merge remote-tracking branch 'erickt/time'
...
Conflicts:
src/libstd/time.rs
2012-11-28 14:49:58 -08:00
Brian Anderson
42c2c2ab2f
Remove parser hack
2012-11-28 14:39:48 -08:00
Brian Anderson
fc06114ddf
Merge remote-tracking branch 'brson/companion' into incoming
...
Conflicts:
src/compiletest/compiletest.rs
src/libcargo/cargo.rs
src/libcore/core.rs
src/librustc/rustc.rs
src/librustdoc/rustdoc.rc
2012-11-28 13:17:33 -08:00
Brian Anderson
8179e268ef
Register snapshots
2012-11-28 12:33:00 -08:00
Patrick Walton
669fbddc44
librustc: Add explicit self to IterBytes. r=nmatsakis
2012-11-28 11:36:04 -08:00
Patrick Walton
07f4031bb4
libsyntax: Implement a macro die!
to replace the fail
expression. r=brson
2012-11-28 11:28:56 -08:00
Patrick Walton
61cfec3c52
librustc: Parse extern "C" { ... }
. r=brson
2012-11-28 11:28:16 -08:00
Patrick Walton
1c348e6e38
librustc: Implement @mut [T] as the new replacement for @[mut T]
2012-11-27 09:23:31 -08:00
Erick Tryzelaar
32763caa60
auto_serialize should use explicit refs ( fixes #4044 )
2012-11-26 22:31:48 -08:00
Brian Anderson
be6613e048
Remove the crate language
2012-11-26 18:13:54 -08:00
Brian Anderson
81a79603c0
Add a temporary hack to divert the parser to an alternate file
2012-11-26 18:13:54 -08:00
Brian Anderson
58e26243a7
syntax: Add a hack to support the int-template pattern
2012-11-26 18:13:54 -08:00
Patrick Walton
e6d87a3ef4
libsyntax: Implement deriving
correctly for type-parameterized structs and enums. r=brson
2012-11-21 10:27:37 -08:00
Patrick Walton
57588edf3b
libsyntax: Implement deriving via a syntax extension for the IterBytes
trait. r=brson
2012-11-21 10:27:34 -08:00
Patrick Walton
b053f0b5e6
libsyntax: Fix duplication of items that occurs if #[deriving_eq]
is applied to a non-enum/non-struct. r=brson
2012-11-21 10:27:30 -08:00
Patrick Walton
e0876fdfc1
libsyntax: Implement deriving
for enums with N-ary variants. r=brson
2012-11-21 10:27:13 -08:00
Graydon Hoare
497a8b54b5
syntax: switch tt quoter to emit ~[tt], not tt.
2012-11-20 16:08:05 -08:00
Patrick Walton
ba01cd7fb0
libsyntax: Long line. rs=make-tidy
2012-11-20 11:59:20 -08:00
Patrick Walton
a7aecc46a5
rustc: Implement "deriving" for monomorphic structs via a syntax extension. r=brson
2012-11-20 11:58:19 -08:00
Patrick Walton
318e534895
rustc: Implement explicit self for Eq and Ord. r=graydon
2012-11-19 15:33:11 -08:00
Brian Anderson
9bed0ddb0e
Fix parsing of interpolated paths
2012-11-19 14:00:39 -08:00
Brian Anderson
371be3c6c4
Remove unused file_type enum from the parser
2012-11-18 18:09:41 -08:00
Brian Anderson
74b2e99797
Report errors better when failing to open files for sub-parsers
2012-11-18 18:09:41 -08:00
Brian Anderson
72cc1aca17
Parse file mods from .rs files
2012-11-18 18:09:41 -08:00
Brian Anderson
ddbff6fd2a
syntax: Remove cdir_syntax. Unused
2012-11-18 18:09:41 -08:00
Brian Anderson
a41903d234
Remove some unused code from lexer
2012-11-18 15:00:21 -08:00
Brian Anderson
1a1e99c27d
Merge remote-tracking branch 'brson/codemap'
...
Conflicts:
src/libsyntax/ext/source_util.rs
2012-11-17 18:38:39 -08:00
Brian Anderson
e621e68c60
Remove unused MultiByteChar.sum field from codemap
2012-11-16 15:52:33 -08:00
Brian Anderson
7c72fd89f1
Add some docs to codemap
2012-11-16 15:15:17 -08:00
Brian Anderson
2af088529f
Remove incorrect comment from codemap
2012-11-16 14:55:52 -08:00
Graydon Hoare
5005be67cc
syntax: rename quote! to quote_tokens!, add quote_{expr,type,item,pat,stmt}!
...
r=brson, Close #3976 .
2012-11-16 14:50:49 -08:00
Brian Anderson
1ac28c36ac
Remove unused types from codemap
2012-11-16 14:35:43 -08:00
Brian Anderson
4a5b28ff0c
Stop tracking CodeMap offsets in the parse session. Big simplification
2012-11-16 14:22:09 -08:00
Brian Anderson
2374154ded
Stop storing char positions in CodeMap
2012-11-16 14:10:17 -08:00
Brian Anderson
81d20156cd
Change spans to use byte offsets instead of char offsets
2012-11-16 12:06:44 -08:00
Brian Anderson
8cba337cce
Remove CodeMap.lookup_byte_pos
2012-11-15 17:32:14 -08:00
Brian Anderson
d5e35e3e87
Convert CodeMap and FileMap to use &self instead of @self
2012-11-15 15:00:49 -08:00
Brian Anderson
bcccf333ab
Add some comments to codemap and lexer
2012-11-15 14:43:31 -08:00
Brian Anderson
4a0f4f5e31
Refactor the lexer to use FilePos types
2012-11-15 14:24:53 -08:00
Brian Anderson
b1dff40bae
Create CodeMap.add_filemap
2012-11-14 21:56:58 -08:00
Brian Anderson
3a9ccd53e5
Factor out some position management code in the lexer
2012-11-14 21:56:55 -08:00
Brian Anderson
8069d2f266
Track character and byte positions together in the parser
2012-11-14 16:34:50 -08:00
Brian Anderson
f67bfe9738
Add types for character position and byte position in the codemap
2012-11-14 15:18:29 -08:00
Brian Anderson
9ecf86343a
Camel case all the codemap types except span
2012-11-14 15:18:26 -08:00