Erick Tryzelaar
|
bf58f7999f
|
Get deserializing json objects into structs working
|
2014-05-27 07:36:57 -07:00 |
|
Erick Tryzelaar
|
38a468ad23
|
Simplify pattern expecting a token
|
2014-05-27 07:21:37 -07:00 |
|
Erick Tryzelaar
|
ebab6637d6
|
add json::from_iter, and start checking errors
|
2014-05-26 17:02:51 -07:00 |
|
Erick Tryzelaar
|
e58096dcc2
|
Get all the json types to parse
|
2014-05-26 14:27:08 -07:00 |
|
Erick Tryzelaar
|
0d56ae5986
|
Add TreeMap impl of Deserializable
|
2014-05-26 12:53:37 -07:00 |
|
Erick Tryzelaar
|
0bda36d6d3
|
get json list deserialization working
|
2014-05-26 11:08:15 -07:00 |
|
Erick Tryzelaar
|
17e93d3d5d
|
Re-enable json and port to rust HEAD
|
2014-05-26 10:40:47 -07:00 |
|
Erick Tryzelaar
|
d87589f5cb
|
Minor cleanup
|
2014-05-26 09:49:05 -07:00 |
|
Erick Tryzelaar
|
7c60fa5276
|
Error properly if we get an unknown variant
|
2014-05-26 09:48:10 -07:00 |
|
Erick Tryzelaar
|
81dfaa4f3d
|
cleanup benchmarks, re-enable enum, remove bench_token_deserializer
test bench_enum::bench_decoder_dog ... bench: 111 ns/iter (+/- 9)
test bench_enum::bench_decoder_frog ... bench: 343 ns/iter (+/- 95)
test bench_enum::bench_deserializer_dog ... bench: 124 ns/iter (+/- 41)
test bench_enum::bench_deserializer_frog ... bench: 315 ns/iter (+/- 17)
test bench_map::bench_decoder_000 ... bench: 580 ns/iter (+/- 138)
test bench_map::bench_decoder_003 ... bench: 2469 ns/iter (+/- 956)
test bench_map::bench_decoder_100 ... bench: 68491 ns/iter (+/- 11653)
test bench_map::bench_deserializer_000 ... bench: 819 ns/iter (+/- 234)
test bench_map::bench_deserializer_003 ... bench: 2589 ns/iter (+/- 594)
test bench_map::bench_deserializer_100 ... bench: 61954 ns/iter (+/- 23604)
test bench_struct::bench_decoder_0_0 ... bench: 602 ns/iter (+/- 153)
test bench_struct::bench_decoder_1_0 ... bench: 1664 ns/iter (+/- 500)
test bench_struct::bench_decoder_1_5 ... bench: 4715 ns/iter (+/- 1499)
test bench_struct::bench_deserializer_0_0 ... bench: 700 ns/iter (+/- 189)
test bench_struct::bench_deserializer_1_0 ... bench: 2318 ns/iter (+/- 595)
test bench_struct::bench_deserializer_1_5 ... bench: 5131 ns/iter (+/- 1650)
test bench_vec::bench_decoder_int_000 ... bench: 22 ns/iter (+/- 22)
test bench_vec::bench_decoder_int_003 ... bench: 154 ns/iter (+/- 40)
test bench_vec::bench_decoder_int_100 ... bench: 1038 ns/iter (+/- 203)
test bench_vec::bench_decoder_u8_000 ... bench: 16 ns/iter (+/- 4)
test bench_vec::bench_decoder_u8_003 ... bench: 158 ns/iter (+/- 43)
test bench_vec::bench_decoder_u8_100 ... bench: 1499 ns/iter (+/- 672)
test bench_vec::bench_deserializer_int_000 ... bench: 16 ns/iter (+/- 4)
test bench_vec::bench_deserializer_int_003 ... bench: 156 ns/iter (+/- 43)
test bench_vec::bench_deserializer_int_100 ... bench: 1027 ns/iter (+/- 244)
test bench_vec::bench_deserializer_u8_000 ... bench: 16 ns/iter (+/- 10)
test bench_vec::bench_deserializer_u8_003 ... bench: 166 ns/iter (+/- 43)
test bench_vec::bench_deserializer_u8_100 ... bench: 1226 ns/iter (+/- 234)
test de::tests::bench_token_deserializer ... bench: 367 ns/iter (+/- 107)
|
2014-05-26 09:43:51 -07:00 |
|
Erick Tryzelaar
|
88ed9cb4f2
|
Get rid of unused macros
|
2014-05-26 09:35:04 -07:00 |
|
Erick Tryzelaar
|
897f64283f
|
re-enable the vec benchmarks
|
2014-05-26 09:31:17 -07:00 |
|
Erick Tryzelaar
|
386b53cce7
|
Add a bench_map.
test bench_map::bench_decoder_map_000 ... bench: 510 ns/iter (+/- 124)
test bench_map::bench_decoder_map_003 ... bench: 2347 ns/iter (+/- 253)
test bench_map::bench_decoder_map_100 ... bench: 68735 ns/iter (+/- 14869)
test bench_map::bench_deserializer_map_000 ... bench: 736 ns/iter (+/- 35)
test bench_map::bench_deserializer_map_003 ... bench: 2446 ns/iter (+/- 348)
test bench_map::bench_deserializer_map_100 ... bench: 64326 ns/iter (+/- 15191)
|
2014-05-26 09:23:05 -07:00 |
|
Erick Tryzelaar
|
ac3136b2f3
|
Map elts shouldn't be tuples, 4267ns vs 4900ns
|
2014-05-26 09:01:22 -07:00 |
|
Erick Tryzelaar
|
e4fece35ad
|
Make the bench_struct map test more complicated, 4373ns vs 5355ns
|
2014-05-26 09:00:54 -07:00 |
|
Erick Tryzelaar
|
8587bb3a4c
|
Replace StructField with Str/String. 2322ns vs 2982ns
|
2014-05-26 08:26:34 -07:00 |
|
Erick Tryzelaar
|
4b8c62828e
|
Simplify the struct deserializer state machine
2515ns vs 3058ns
|
2014-05-26 07:46:17 -07:00 |
|
Erick Tryzelaar
|
ada088eb85
|
update to rust HEAD (20a415)
struct decoder: 2417ns
struct deserializer: 1640ns
|
2014-05-26 07:18:18 -07:00 |
|
Erick Tryzelaar
|
41eb7293d2
|
flesh out struct benchmarks
|
2014-05-25 22:20:06 -07:00 |
|
Erick Tryzelaar
|
62fb2073e2
|
reenable struct benchmarks
|
2014-05-25 22:16:34 -07:00 |
|
Erick Tryzelaar
|
cd3cd7b01c
|
Update deserializing hashmaps
|
2014-05-25 22:08:37 -07:00 |
|
Erick Tryzelaar
|
a0788f5c92
|
Reenable the tests
|
2014-05-25 21:59:58 -07:00 |
|
Erick Tryzelaar
|
7206db4b0b
|
Minor cleanup
|
2014-05-25 21:51:12 -07:00 |
|
Erick Tryzelaar
|
f274dcbd44
|
Rewrite to work around rust/issues/11751. 162ns vs 156ns
|
2014-05-25 21:36:56 -07:00 |
|
Erick Tryzelaar
|
7030b5d790
|
Inline expect_rest_of_collection
|
2014-05-25 19:41:29 -07:00 |
|
Erick Tryzelaar
|
0a77e0de55
|
Sep is unused
|
2014-05-25 13:35:32 -07:00 |
|
Erick Tryzelaar
|
2ee0c619bd
|
Add Vec<u8> benchmarks
|
2014-05-24 23:33:18 -07:00 |
|
Erick Tryzelaar
|
b90aae619c
|
minor cleanup
|
2014-05-24 15:04:45 -07:00 |
|
Erick Tryzelaar
|
79d3676d1c
|
Extend bench_vec tests
|
2014-05-24 15:02:24 -07:00 |
|
Erick Tryzelaar
|
ec32fc9a78
|
Optimize away one state in enums
|
2014-05-24 14:11:25 -07:00 |
|
Erick Tryzelaar
|
cb1b006b0f
|
Migrate enum bench to lookahead
|
2014-05-24 14:08:35 -07:00 |
|
Erick Tryzelaar
|
7180d94196
|
switch back to lookahead, 175ns vs 184ns
|
2014-05-23 22:30:53 -07:00 |
|
Erick Tryzelaar
|
2d1c7b43d7
|
checkpoint vec without Sep, 184ns vs 182ns
|
2014-05-23 20:58:09 -07:00 |
|
Erick Tryzelaar
|
79f35c4d48
|
Move the benchmarks out of de.rs
|
2014-05-23 20:41:29 -07:00 |
|
Erick Tryzelaar
|
a09694ea5f
|
play around with state function handlers
|
2014-05-23 08:40:46 -07:00 |
|
Erick Tryzelaar
|
d90f758f66
|
experiment with removing state machine from OuterDeserializer
588ns vs 552ns
|
2014-05-22 07:56:37 -07:00 |
|
Erick Tryzelaar
|
7808dfc2d4
|
Rename bench_dummy_deserializer to bench_token_sdeerializer
|
2014-05-21 22:08:59 -07:00 |
|
Erick Tryzelaar
|
57091bf441
|
Add struct bench
ints: 169ns vs 191ns
enum: 376ns vs 347ns
struct: 2432ns vs 3465ns
|
2014-05-21 22:08:08 -07:00 |
|
Erick Tryzelaar
|
ad2d7a5deb
|
Add a StructDecoder
|
2014-05-21 21:48:49 -07:00 |
|
Erick Tryzelaar
|
6e917c0800
|
Make sure to inline things in the Decoders
169ns vs 190ns, 346ns vs 329ns
|
2014-05-21 21:48:34 -07:00 |
|
Erick Tryzelaar
|
173d367d30
|
Swap AnimalDeserializer with a state machine to be fairer
165ns vs 193ns, 374ns vs 342ns
|
2014-05-21 21:09:50 -07:00 |
|
Erick Tryzelaar
|
d8f0aba128
|
add benchmarks for 157ns vs 197ns, 362ns vs 333ns
|
2014-05-21 20:54:10 -07:00 |
|
Erick Tryzelaar
|
511cc7e198
|
Add support for enums
|
2014-05-21 08:44:48 -07:00 |
|
Erick Tryzelaar
|
58423b321f
|
Add support for structs, 155ns vs 206ns
|
2014-05-21 08:25:28 -07:00 |
|
Erick Tryzelaar
|
c7b6f45d7a
|
explicit expect_{seq,map} should error on another collection type
150ns vs 195ns
|
2014-05-21 06:47:58 -07:00 |
|
Erick Tryzelaar
|
23630be5dd
|
Collections should work with multiple types
|
2014-05-20 19:38:48 -07:00 |
|
Erick Tryzelaar
|
2f266aa67b
|
Split out multiple collection types: 153ns vs 194ns
This allows a consumer of a deserializer stream to know what
type it might be dealing with.
|
2014-05-20 19:22:23 -07:00 |
|
Erick Tryzelaar
|
54d41da743
|
cleanup, and revert back to the separator, 162ns vs 205ns
|
2014-05-19 19:41:38 -07:00 |
|
Erick Tryzelaar
|
db257057e2
|
support both LL(0) and LL(1) grammars
|
2014-05-19 18:44:20 -07:00 |
|
Erick Tryzelaar
|
a41c64f735
|
macrotize tuple impls
|
2014-05-19 17:53:24 -07:00 |
|