Alex Crichton
82fa0018c8
Remove all unnecessary allocations (as flagged by lint)
2013-05-20 16:10:40 -05:00
Huon Wilson
5dc5efefd4
syntax: deprecate #[auto_{en,de}code] in favour of #[deriving({En,De}codable)].
...
Replace all instances of #[auto_*code] with the appropriate #[deriving] attribute
and remove the majority of the actual code, leaving stubs to refer the user to
the new syntax.
2013-05-16 08:55:57 +10:00
Björn Steinbrink
bdc182cc41
Use static string with fail!() and remove fail!(fmt!())
...
fail!() used to require owned strings but can handle static strings
now. Also, it can pass its arguments to fmt!() on its own, no need for
the caller to call fmt!() itself.
2013-05-14 16:36:23 +02:00
Tim Chevalier
ed41864464
Warning police
2013-05-11 20:36:44 -07:00
Patrick Walton
c7522417d4
libstd: Remove some residual mutable fields
2013-05-08 17:04:00 -07:00
Brian Anderson
8081e8debf
Register snapshots
2013-05-04 15:43:51 -07:00
Patrick Walton
dc5df61bc1
librustc: Update the serializer to work properly with INHTWAMA, removing mutable fields in the process
2013-05-02 17:00:51 -07:00
Daniel Micay
f792baba42
only use #[no_core] in libcore
2013-04-27 21:34:24 -04:00
Erick Tryzelaar
f3ab67ec5f
syntax: add {read,emit}_enum_struct_variant{,_field}
2013-04-10 16:32:09 -07:00
Erick Tryzelaar
e31f7b7c74
std: add serialize {read,emit}_tuple{,_arg,_struct,_struct_arg}
2013-04-10 16:32:09 -07:00
Erick Tryzelaar
419f6acf0e
std: rename {read,emit}_field to {read,emit}_struct_field
2013-04-10 16:08:22 -07:00
Erick Tryzelaar
97cc571358
std: clean up the order of {De,En}codable methods
2013-04-10 16:08:22 -07:00
Niko Matsakis
5606fc0c90
Revert map.each to something which takes two parameters
...
rather than a tuple. The current setup iterates over
`BaseIter<(&'self K, &'self V)>` where 'self is a lifetime declared
*in the each method*. You can't place such a type in
the impl declaration. The compiler currently allows it,
but this will not be legal under #5656 and I'm pretty sure
it's not sound now.
2013-04-10 07:51:48 -07:00
Alex Crichton
255193cc1a
Removing no longer needed unsafe blocks
2013-04-08 17:50:25 -04:00
Alex Crichton
3136fba5ae
Removing some mutable fields in libstd
2013-04-08 17:50:14 -04:00
Daniel Micay
cc148b58ff
rename Linear{Map,Set} => Hash{Map,Set}
2013-04-03 10:30:36 -04:00
Daniel Micay
44029a5bbc
hashmap: rm linear namespace
2013-04-03 10:30:18 -04:00
Erick Tryzelaar
5b7d608bf6
std: add more json decoder tests.
2013-03-30 13:31:03 -07:00
Erick Tryzelaar
9bbf384058
std: clean up the json pretty printer tests
2013-03-30 11:08:57 -07:00
Erick Tryzelaar
529ae38605
Merge remote-tracking branch 'remotes/origin/incoming' into serial
2013-03-29 17:41:32 -07:00
Brian Anderson
518c295a03
Register snapshots
2013-03-29 11:30:42 -07:00
Erick Tryzelaar
bdef3f1930
std: fix json deserializing vectors and a test
2013-03-29 09:10:31 -07:00
Erick Tryzelaar
d1a83e6986
std: add Encoder::emit_map and Decoder::read_map
2013-03-29 09:04:35 -07:00
Erick Tryzelaar
90b3658cd6
std: remove Encoder::read_rec and Decoder::emit_rec
2013-03-29 07:05:54 -07:00
Erick Tryzelaar
e99cdcfba8
std: remove Encoder::emit_tup{,_elt} and Decoder::read_tup{,_elt}
2013-03-29 07:05:54 -07:00
Erick Tryzelaar
590bbcebe9
std: remove Encoder::emit_{owned,managed}_vec and Decoder::read_{owned,managed}_vec
2013-03-29 07:05:54 -07:00
Erick Tryzelaar
63fc88757f
std: remove Encoder::emit_{owned,managed} and Decoder::read_{owned,managed}
2013-03-29 07:05:54 -07:00
Erick Tryzelaar
8b43c620b9
std: remove Encoder::emit_{owned,managed}_str and Decoder::read_{owned,managed}_str
2013-03-29 07:05:54 -07:00
Erick Tryzelaar
b05e148dc9
std: change Decoder::read_option to return a generic type
...
This allows read_option to be used with a custom option type instead
of just core::Option.
2013-03-28 20:34:33 -07:00
Erick Tryzelaar
aa779c1240
std: change Decoder::read_option to return a generic type
...
This allows read_option to be used with a custom option type instead
of just core::Option.
2013-03-28 13:11:24 -07:00
Erick Tryzelaar
c317d3f6fa
std: add some better failure msgs to json
2013-03-27 07:04:17 -07:00
Erick Tryzelaar
4e9a63ff91
std: add tests for decoding json enums
2013-03-27 07:04:14 -07:00
Erick Tryzelaar
4d6dcefcbb
std: Decode::read_enum_variant should pass in the variant names
...
Because the json::Decoder uses the string variant name, we need a
way to correlate the string to the enum index. This passes in a
static &[&str] to read_enum_variant, which allows the json::Decoder
to know which branch it's trying to process.
2013-03-27 07:04:13 -07:00
Erick Tryzelaar
478e4498b7
std: add option type directly to serialize::{En,De}code
2013-03-27 07:04:12 -07:00
Erick Tryzelaar
4d995e66a2
std: change default json enum encoder to use strings or a flat vec
2013-03-27 07:04:12 -07:00
Erick Tryzelaar
b10b8c3ee4
std: Add tests for json decoding options
2013-03-27 07:04:11 -07:00
Erick Tryzelaar
c9188c8301
std: fix json PrettyEncoder and add tests
2013-03-27 07:04:10 -07:00
Erick Tryzelaar
6cf99fa54a
std: change fail_unless to assert_eq in json.rs
2013-03-27 07:04:09 -07:00
Erick Tryzelaar
b290863be6
std: clean json test imports
2013-03-27 07:01:50 -07:00
Patrick Walton
8b56a8380b
librustc: Modify all code to use new lifetime binder syntax
2013-03-26 21:30:17 -07:00
Alex Crichton
fa7772893a
Remove unused imports throughout
2013-03-26 19:20:02 -04:00
Marvin Löbel
b9de2b5787
Switched over a bunch of splitting funktions to non-allocating iterators
2013-03-26 14:59:17 +01:00
Andrew Paseltiner
45677eebf2
replace impls with deriving
where applicable
2013-03-23 06:57:30 -04:00
Patrick Walton
6d81307a9b
librustc: Add explicit lifetime binders and new lifetime notation in core/std/syntax/rustc
2013-03-22 22:24:35 -07:00
Patrick Walton
c1084091d4
libstd: Remove all uses of pure
from libstd. rs=depure
2013-03-22 10:29:17 -07:00
bors
ec8345b18a
auto merge of #5407 : jbclements/rust/add-assert-eq-macro, r=jbclements
...
Adds an assert_eq! macro that asserts that its two arguments are equal. Error messages can therefore be somewhat more informative than a simple assert, because the error message includes "expected" and "given" values.
2013-03-21 15:24:54 -07:00
John Clements
3cd65c233d
change some uses of fail_unless to assert_eq
2013-03-20 16:05:59 -07:00
Erick Tryzelaar
cefecd8601
core: add str::each{,i}_reverse
2013-03-20 07:53:23 -07:00
Patrick Walton
e78f2e2ac5
librustc: Make the compiler ignore purity.
...
For bootstrapping purposes, this commit does not remove all uses of
the keyword "pure" -- doing so would cause the compiler to no longer
bootstrap due to some syntax extensions ("deriving" in particular).
Instead, it makes the compiler ignore "pure". Post-snapshot, we can
remove "pure" from the language.
There are quite a few (~100) borrow check errors that were essentially
all the result of mutable fields or partial borrows of `@mut`. Per
discussions with Niko I think we want to allow partial borrows of
`@mut` but detect obvious footguns. We should also improve the error
message when `@mut` is erroneously reborrowed.
2013-03-18 17:21:16 -07:00
Patrick Walton
352c070365
librustc: Convert all uses of old lifetime notation to new lifetime notation. rs=delifetiming
2013-03-18 17:21:14 -07:00