Erick Tryzelaar
fbdede68a4
Build the serde_json docs
2015-07-31 07:24:05 -07:00
Erick Tryzelaar
e88ef4715c
Explicitly make the visit_struct_{,variant}_elt key a &'static str
2015-07-31 07:22:14 -07:00
Erick Tryzelaar
94f3dd25d8
Allow VariantVisitor::visit_newtype to default to calling visit_tuple
2015-07-31 07:22:13 -07:00
Erick Tryzelaar
2c58a9c11d
Expose TupleVisitor*::new
2015-07-31 07:22:13 -07:00
Erick Tryzelaar
97528b59cf
Add support for serializing newtype structs
...
This enables formats like JSON to serialize newtype wrapper
structs without the normal object wrapper. Consider types like:
```rust
struct Point {
x: u32,
y: u32,
}
stuct MyPoint(Point);
```
Before this patch, `MyPoint(1,2)` would get serialized as
`[{"x":1,"y":2}]`, but now it gets serialized as `{"x":1,"y"2}`.
2015-07-31 07:22:13 -07:00
Erick Tryzelaar
6715fb6652
Rename visit_simple to visit_newtype
2015-07-31 07:22:13 -07:00
Erick Tryzelaar
fefc010deb
Rename visit_enum_simple to visit_newtype_variant
2015-07-31 07:22:13 -07:00
Erick Tryzelaar
6cbb72decf
Inlne the visit_seq method
2015-07-31 07:22:13 -07:00
Erick Tryzelaar
7e25ed863c
Merge pull request #120 from erickt/enum-fields
...
Add enum fields and tuple length to deserialization visitor methods, renamed some more methods
2015-07-30 09:51:01 -07:00
Erick Tryzelaar
5a56394814
Add test to deserialize variants from usize and &[u8]
2015-07-30 08:06:04 -07:00
Erick Tryzelaar
de1059f648
Allow Result<T, E> to use usize variant names
2015-07-30 08:06:04 -07:00
Erick Tryzelaar
97f08086dd
Have visit_enum_simple default to calling visit_tuple_variant
2015-07-30 08:06:04 -07:00
Erick Tryzelaar
0348a3914d
Pass variant index to visit_enum_simple
2015-07-30 08:06:04 -07:00
Erick Tryzelaar
5dc245d2ce
Switch serializing Result to using simple enums
2015-07-30 08:06:04 -07:00
Erick Tryzelaar
71cc95248c
Allow Option<T> to be used directly as a ser::SeqVisitor
2015-07-30 08:06:04 -07:00
Erick Tryzelaar
2cb7d66767
Add test for deserializing a simple enum
2015-07-30 08:06:04 -07:00
Erick Tryzelaar
49fa208242
Minor cleanup
2015-07-30 08:06:04 -07:00
Erick Tryzelaar
d2fef27721
Rename ser::Serializer::visit_enum_{unit,seq,map} to visit_{unit,tuple,struct}_variant
2015-07-30 06:45:21 -07:00
Erick Tryzelaar
351b7039a8
Rename de::VariantVisitor::visit_{map,seq} to visit_{struct,tuple}
2015-07-30 06:45:21 -07:00
Erick Tryzelaar
7585ce9ed4
Re-indent
2015-07-30 06:45:21 -07:00
Erick Tryzelaar
578a0178b5
Make sure the visit_{enum,struct,tuple_struct} name is a &'static str
2015-07-30 06:45:21 -07:00
Erick Tryzelaar
6c9cebdcc3
Pass the variant fields and tuple lengths into visit_{enum,tuple,tuple_struct}
2015-07-30 06:45:21 -07:00
Erick Tryzelaar
35e2022e9a
Point at github.com/serde-rs/serde
2015-07-30 06:43:20 -07:00
Erick Tryzelaar
0058e3a8d4
Merge pull request #111 from oli-obk/master
...
tuple enums with single element should not be a json-array
2015-07-29 13:35:43 -07:00
Erick Tryzelaar
abf28ee167
Merge pull request #118 from erickt/ignore-fields
...
Add `#[serde(skip_serializing)] to skip serializing some fields
2015-07-29 10:08:19 -07:00
Erick Tryzelaar
b1cb5379de
Add `#[serde(skip_serializing)] to skip serializing some fields
...
Closes #99
2015-07-23 08:07:49 -07:00
Erick Tryzelaar
447d08bd91
Merge pull request #117 from erickt/fix-json
...
Fix deriving traits for fully generic types.
2015-07-23 08:04:46 -07:00
Erick Tryzelaar
b0512a4479
Fix deriving traits for fully generic types.
...
Closes #100
2015-07-23 07:25:27 -07:00
Erick Tryzelaar
8663435a05
Merge remote-tracking branch 'remotes/origin/master' into v5-5
...
# Conflicts:
# serde_tests/tests/test_json.rs
2015-07-23 07:04:10 -07:00
Erick Tryzelaar
327990bc5f
Merge pull request #115 from erickt/fix-json
...
Fix serializing maps/sequences with no size hint
2015-07-23 06:58:18 -07:00
Erick Tryzelaar
57753c9044
Fix references to serde::json
2015-07-22 10:44:43 -07:00
Erick Tryzelaar
e35603eb85
Fix serializing maps/sequences with no size hint
...
Closes #101
2015-07-22 10:44:43 -07:00
Erick Tryzelaar
8fa40fe7e1
Move json into it's own crate
...
Not everyone needs json, so no reason to force people to build
it.
2015-07-22 10:44:43 -07:00
Erick Tryzelaar
d4c20829f6
Inline enum visit_map
2015-07-22 10:44:43 -07:00
Erick Tryzelaar
dbe2beacb0
Allow structs to be deserialized from sequences
...
This relies on the sequence to have the same ordering as the
struct field order.
2015-07-22 10:44:43 -07:00
Erick Tryzelaar
b9a938a01c
Some default de::Visitor::visit* should proxy to other methods
2015-07-22 10:44:43 -07:00
Erick Tryzelaar
4dd7345568
Simplify result serialization and deserialization
2015-07-22 10:44:43 -07:00
Erick Tryzelaar
b3cf9375d4
Add Tuple Deserializer Visitor constructor
2015-07-22 10:44:43 -07:00
Erick Tryzelaar
1751155a3a
Minor cleanup
2015-07-22 10:44:43 -07:00
Erick Tryzelaar
5dae700aec
Pass struct field names to deserializer
2015-07-22 10:44:42 -07:00
Erick Tryzelaar
affa9382be
Expose variant index to Serializer
2015-07-22 10:44:42 -07:00
Erick Tryzelaar
10f23dddfe
Rename named_* to use {enum,struct,unit}_*
...
This better reflects how they're used.
2015-07-22 10:44:42 -07:00
Erick Tryzelaar
d30cf07254
Serializer::visit_enum_seq{,_elt} should call visit_named_seq{,_elt}
2015-07-22 10:44:42 -07:00
Erick Tryzelaar
31491b822f
Version bump
2015-07-22 10:44:42 -07:00
Erick Tryzelaar
4c19cfead5
Fix serializing maps/sequences with no size hint
...
Closes #101
2015-07-22 10:41:51 -07:00
Erick Tryzelaar
b2754c2c3b
Merge pull request #116 from erickt/travis
...
Use new travis containers
2015-07-22 10:41:38 -07:00
Erick Tryzelaar
f56976db1d
Fix running serde_tests with nightly cargo
2015-07-22 10:40:06 -07:00
Erick Tryzelaar
77b8a8baa0
Use new travis containers
2015-07-22 09:51:19 -07:00
Erick Tryzelaar
0b9190cce3
Merge pull request #108 from dswd/patch-1
...
Make the TupleVisitors public
2015-07-18 21:21:09 -04:00
Erick Tryzelaar
60ab494226
Fix cd serde_macros && cargo build
2015-07-16 13:48:15 -04:00
Erick Tryzelaar
ac758ed3c8
Version bump
2015-07-16 11:28:18 -04:00
Erick Tryzelaar
236d40d73e
Add Serializer hooks for sequence elements
2015-07-16 10:51:01 -04:00
Erick Tryzelaar
92029a05c6
Add Deserializer type hints
...
This allows file formats like bincode, which do not encode it's values
with a type tag, to deserialize values.
2015-07-16 10:50:54 -04:00
Erick Tryzelaar
c7b9997dd1
Add all of the stdlib collection deserialization implementations
2015-07-16 10:42:34 -04:00
Erick Tryzelaar
48309bfdd0
Add all of the stdlib collection serialization implementations
2015-07-16 10:00:22 -04:00
Erick Tryzelaar
f76d1ab10d
Compile serde_macros tests with the nightly features
2015-07-16 10:00:22 -04:00
Erick Tryzelaar
45f552f006
Fix feature flag use for NonZero
2015-07-16 10:00:21 -04:00
Erick Tryzelaar
4d42cfea53
Fix warnings
2015-07-16 09:36:14 -04:00
Erick Tryzelaar
7109e2d379
Fix the tests
2015-07-16 09:35:09 -04:00
Erick Tryzelaar
ff214643ce
Merge remote-tracking branch 'remotes/origin/master' into nonzero
...
# Conflicts:
# serde/src/de/impls.rs
2015-07-16 09:34:45 -04:00
Erick Tryzelaar
04918a52eb
Merge pull request #105 from jnicholls/boolvisitor
...
Make BoolVisitor public so it is documented as being in existence
2015-07-16 07:41:49 -04:00
Erick Tryzelaar
5dd71600f7
Merge pull request #102 from pcwalton/result
...
Implement serialization for `Result`.
2015-07-16 07:29:28 -04:00
Erick Tryzelaar
bcc9e15b05
Merge pull request #94 from cmbrandenburg/master
...
Fix spelling in README.md
2015-07-01 10:38:13 -07:00
Erick Tryzelaar
5f2d306f9b
Merge pull request #92 from SkylerLipthay/cow-impls
...
Add impls for Cow
2015-06-21 10:07:00 -07:00
Erick Tryzelaar
ed5b4d7319
Fix serializing generic enums
...
This fixes generic enums with variants that don't use all lifetime
and typarams. Closes #88 .
2015-06-18 08:45:03 -07:00
Erick Tryzelaar
b09c0fc653
Fix an indent typo
2015-06-18 07:49:13 -07:00
Erick Tryzelaar
ab3e40ca45
Version bump
2015-06-08 07:12:27 -07:00
Erick Tryzelaar
8f67e9c048
Switch exponent bounds checking back to using powi
2015-06-08 07:07:09 -07:00
Erick Tryzelaar
7dc1a64f03
Merge pull request #80 from ProtectedMode/master
...
Fix #77 , integer overflow when parsing JSON scientific notation number.
2015-06-08 06:57:33 -07:00
Erick Tryzelaar
ac3a3e922f
Fix compilation with rust nightly (613e57b44) and syntex 0.7.0
2015-06-08 06:55:36 -07:00
Erick Tryzelaar
4e50c56542
Merge pull request #87 from Manishearth/patch-1
...
Use correct attribute syntax
2015-06-07 20:46:44 -07:00
Erick Tryzelaar
c993414b92
serde_tests tests doesn't need the test crate
2015-05-20 22:57:19 -07:00
Erick Tryzelaar
ed6ef4e149
Travis work
2015-05-20 22:44:50 -07:00
Erick Tryzelaar
859cdcc815
Remove unnecessary lifetime
2015-05-20 09:02:38 -07:00
Erick Tryzelaar
81d617bd93
The README is in a different location
2015-05-18 23:36:46 -07:00
Erick Tryzelaar
3396388222
Remove redundant import
2015-05-18 23:34:17 -07:00
Erick Tryzelaar
ff8c3b3d51
Initial support for syntex
2015-05-18 23:34:17 -07:00
Erick Tryzelaar
3d0efd123f
Minor cleanup
2015-05-18 22:49:50 -07:00
Erick Tryzelaar
8ca1b9ac3c
default_value doesn't need to be public
2015-05-18 22:49:49 -07:00
Erick Tryzelaar
2c24be90d2
Switch to using MultiDecorator
2015-05-18 22:49:49 -07:00
Erick Tryzelaar
482f92af61
Add a single driver for tests and benchmarks
2015-05-18 22:47:36 -07:00
Erick Tryzelaar
24ac61f9f2
Pull codegen into it's own crate
2015-05-18 22:47:35 -07:00
Erick Tryzelaar
426394cd7b
Version bump
2015-05-18 22:47:35 -07:00
Erick Tryzelaar
7c3e95a7c7
Ignore all target and Cargo.lock files
2015-05-18 22:47:35 -07:00
Erick Tryzelaar
9dd5f9dc7a
Restructure directories to prep for syntex
2015-05-18 22:47:35 -07:00
Erick Tryzelaar
e6776ffc37
Protect against json integer overflow
...
Closes #75
2015-05-18 22:40:29 -07:00
Erick Tryzelaar
adae2bd3c5
Merge pull request #72 from borman/bytestrings
...
Improved support for byte strings
2015-05-18 22:28:37 -07:00
Erick Tryzelaar
14ca260c26
Merge pull request #70 from oli-obk/xml_requirements
...
changes needed for xml parsing
2015-05-18 22:25:15 -07:00
Erick Tryzelaar
64588f0cb6
Merge pull request #74 from tomprogrammer/array
...
Add serialization/deserialization for fixed size arrays
2015-05-18 22:21:59 -07:00
Erick Tryzelaar
50cac7f985
Rewrite Value::lookup to not require an allocation
2015-05-18 22:19:30 -07:00
Erick Tryzelaar
5fe85128c2
Merge pull request #76 from blaenk/json-lookup
...
implement lookup method for json::Value
2015-05-18 21:50:55 -07:00
Erick Tryzelaar
ee45eb8340
Merge pull request #69 from hugoduncan/feature/format-specific-field-names
...
Adds serializer format specific field names
2015-05-14 21:59:05 -07:00
Erick Tryzelaar
af752ddcb5
Merge pull request #71 from lifthrasiir/json-split-branch
...
Replace a redundant `escape` variable with nested matches.
2015-05-07 10:51:57 -07:00
Erick Tryzelaar
206e19edb4
Fix unquoting arms with latest quasi
2015-05-02 10:44:57 -07:00
Erick Tryzelaar
f0c87fbd4c
Format flats with Debug to properly print "-0.0".
2015-05-01 07:43:48 -07:00
Erick Tryzelaar
c3fe6c9c67
Update the README to point at https://github.com/serde-rs
2015-04-26 18:37:18 -07:00
Erick Tryzelaar
e5df4b6653
Simplify PrettyFormatter::new
2015-04-26 12:05:38 -07:00
Erick Tryzelaar
12cf2f0b0b
Simplify the return types
2015-04-26 11:01:55 -07:00
Erick Tryzelaar
8d4de2b3db
Rename Serializer::new_with_formatter to with_formatter
2015-04-26 10:29:28 -07:00
Erick Tryzelaar
e509adcac5
Allow the pretty printer character to be changed
...
This unfortunately loses the simd-ish whitespace printer, but since
pretty printing shouldn't be on a hot path, this shouldn't really
matter.
Partially addresses #65 .
2015-04-26 09:29:06 -07:00