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
909d8f0eac
std: Add Deque::eachi and a Deque serializer support
2013-03-29 18:02:44 -07:00
Erick Tryzelaar
0de7635f53
Merge remote-tracking branch 'remotes/origin/incoming' into serial
2013-03-29 17:48:44 -07:00
Erick Tryzelaar
e5c7a9e342
std: add serialization support for dlist, linearset, triemap, trieset, treemap, and treeset
2013-03-29 17:44:28 -07:00
Erick Tryzelaar
529ae38605
Merge remote-tracking branch 'remotes/origin/incoming' into serial
2013-03-29 17:41:32 -07:00
Patrick Walton
1e91595520
librustc: Remove fail_unless!
2013-03-29 16:39:08 -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
31563f53d9
Merge remote-tracking branch 'remotes/origin/incoming' into serial
2013-03-29 09:06:36 -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
2c658fabed
std: remove prettyprint
...
Everyone uses fmt!("%?", ...) instead of the prettyprint
module, so I'm removing this file.
2013-03-29 07:05:54 -07:00
Alex Crichton
be57d745d2
Removing unused imports
2013-03-28 23:56:46 -04: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
bors
b1c0a6628b
auto merge of #5595 : catamorphism/rust/demoding, r=catamorphism
2013-03-28 04:54:45 -07:00
bors
84ddff3909
auto merge of #5578 : erickt/rust/incoming, r=jbclements,erickt
...
Hey folks,
This patch series does some work on the json decoder, specifically with auto decoding of enums. Previously, we would take this code:
```
enum A {
B,
C(~str, uint)
}
```
and would encode a value of this enum to either `["B", []]` or `["C", ["D", 123]]`. I've changed this to `"B"` or `["C", "D", 123]`. This matches the style of the O'Caml json library [json-wheel](http://mjambon.com/json-wheel.html ). I've added tests to make sure all this work.
In order to make this change, I added passing a `&[&str]` vec to `Decode::emit_enum_variant` so the json decoder can convert the name of a variant into it's position. I also changed the impl of `Encodable` for `Option<T>` to have the right upper casing.
I also did some work on the parser, which allows for `fn foo<T: ::cmp::Eq>() { ... }` statements (#5572 ), fixed the pretty printer properly expanding `debug!("...")` expressions, and removed `ast::expr_vstore_fixed`, which doesn't appear to be used anymore.
2013-03-27 21:51:53 -07:00
bors
f7f6013a62
auto merge of #5574 : thestinger/rust/docstring, r=sanxiyn
2013-03-27 17:48:56 -07:00
Tim Chevalier
b0d1643fa6
core/std: Remove uses of ++ mode
...
from stackwalk::frame_address and net_tcp::on_tcp_read_cb
As per #4425
2013-03-27 17:14:10 -07:00
Tim Chevalier
31f8093037
core: Remove unused import
2013-03-27 17:14:06 -07:00
Niko Matsakis
069529bc5c
Autoref the argument to the index operator ( #4920 )
2013-03-27 13:04:03 -04: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
89fc95885f
std: serializing Options should use the right case
2013-03-27 07:02:59 -07:00
Erick Tryzelaar
b290863be6
std: clean json test imports
2013-03-27 07:01:50 -07:00
Daniel Micay
1c6272a267
base64: add docstring
2013-03-27 03:42:03 -04:00
Patrick Walton
f41a510631
librustc: Remove obsolete syntax
2013-03-26 21:30:18 -07:00
Patrick Walton
0a4d0f37ca
librustc: Enforce that extern mod
directives come first, then use
directives, then items.
...
Resolve them in this order as well.
2013-03-26 21:30:17 -07:00
Patrick Walton
8b56a8380b
librustc: Modify all code to use new lifetime binder syntax
2013-03-26 21:30:17 -07:00
Patrick Walton
142dbd65da
librustc: Remove all uses of the old [T * N]
fixed-length vector syntax
2013-03-26 21:29:34 -07:00
Patrick Walton
0d52b22e7b
libcore: Change [const T]
to const [T]
everywhere
2013-03-26 21:29:33 -07:00
Daniel Micay
34c5a09ce3
option: rm functions that duplicate methods
2013-03-26 22:44:40 -04:00
Alex Crichton
d69108d8f7
std: Remove the oldmap module
2013-03-26 19:21:05 -04:00
Alex Crichton
fa7772893a
Remove unused imports throughout
2013-03-26 19:20:02 -04:00
Marvin Löbel
c99488b3a4
Isolated bug, static vector seems to behave differently than fixed sized one
2013-03-26 14:59:17 +01:00
Marvin Löbel
b9de2b5787
Switched over a bunch of splitting funktions to non-allocating iterators
2013-03-26 14:59:17 +01:00
Marvin Löbel
d74606ead6
pre-rebase commit
2013-03-26 14:59:17 +01:00
bors
7481524978
auto merge of #5528 : thestinger/rust/find_mut, r=brson
...
This currently requires workarounds for the borrow checker not being flow-sensitive for `LinearMap` and `TrieMap`, but it can already be expressed for `TreeMap` and `SmallIntMap` without that.
2013-03-25 22:24:57 -07:00
bors
47ddb59b80
auto merge of #5525 : dbaupp/rust/minor_fixups, r=graydon
...
Kills some warnings, and implements str::each_char_reverse so that it actually iterates. The test case wasn't detecting a failure, since the loop body was never executed.
2013-03-25 21:18:57 -07:00