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
Jorge Israel Peña
bc236bde34
implement lookup method for json::Value
2015-05-17 21:24:00 -07:00
Thomas Bahn
62058962de
Add deserialiation implementations for fixed size arrays
2015-05-16 14:19:22 +02:00
Thomas Bahn
7d52366403
Add serialization implementations for fixed size arrays
2015-05-16 14:18:32 +02:00
Hugo Duncan
ec3af2cb6a
Factor out attr module
...
Factors out field attribute code into the attr module.
2015-05-08 12:43:12 -04:00
Hugo Duncan
a1e101b513
Make Value use the 'json' format string
2015-05-08 12:43:11 -04:00
Hugo Duncan
a935ebe8b9
Adds serializer format specific field names
...
Allows different field names to be used for different external formats.
Field names are specified using the `rename` field attribute, e.g:
#[serde(rename(xml= "a4", json="a5"))]
Reverts #62
Addresses #61
2015-05-08 12:43:11 -04:00
Oliver Schneider
1748831152
missing field errors displayed original field name instead of renamed
...
closes #63
2015-04-23 17:28:42 +02:00
Erick Tryzelaar
ed1b476a22
Merge pull request #58 from oli-obk/separate_line_col
...
separate out the line/column counting from character iteration
2015-04-22 11:02:55 -07:00
Hugo Duncan
fd6462f8d1
Add serialize, deserialize specific rename
...
Adds the rename_serialize and rename_deserialize field attributes to
specify serialisation and deserialisation specific renames.
2015-04-21 17:58:18 -04:00
Oliver Schneider
c37f67b0a1
separate out the line/column counting from character iteration
2015-04-16 16:31:56 +02:00
Erick Tryzelaar
7622255d6f
Remove the std_misc
feature flag
2015-04-12 10:43:29 -07:00
Erick Tryzelaar
e0eff942b1
Add Error::unknown_field_error
2015-04-12 10:32:54 -07:00
Erick Tryzelaar
1da47c0870
Change de::VariantVisitor to let deserializers know the variant kind
...
This allows formats like cbor that encode a unit variant as just a
string to work.
[breaking-change]
2015-04-12 10:32:54 -07:00
Erick Tryzelaar
d8506e9a6d
Update to rust HEAD
2015-04-05 13:20:33 -04:00
Erick Tryzelaar
d0b49d9b89
Finish updating to rust HEAD
2015-04-02 19:13:25 -07:00
Erick Tryzelaar
2cd49060fa
Rename #[serde(alias)] to #[serde(rename)] and add tests
...
Closes #9 and #47 .
2015-04-01 22:14:28 -07:00
Erick Tryzelaar
bfe7a04c4d
Update the location of json errors coming from "Deserialize"
2015-03-30 19:50:41 -07:00
Erick Tryzelaar
aa8d13456a
Add bytes type to enable {,de}serializing to a byte array
2015-03-25 23:03:01 -07:00
Erick Tryzelaar
1618faed63
Add deserialization impls for {BTree,Hash}{Map,Set}
2015-03-23 19:02:20 -07:00
Erick Tryzelaar
09de237033
Allow Vecs, BTreeMaps, and HashMaps to be deserialized from a unit
...
Closes #36
2015-03-20 08:47:33 -07:00
Erick Tryzelaar
d17846eff1
Add deserializer type hinting hooks
...
Formats like xml have trouble knowing if they should deserialize
tags into a sequence from the stream they are deserializing from.
This PR adds hooks so the deserializee can inform the deserializer
to provide them a sequence if possible.
Closes #38 .
2015-03-20 08:32:33 -07:00
Erick Tryzelaar
5378d22708
Switch to the new custom_deserialize syntax
2015-03-19 20:19:49 -07:00
Erick Tryzelaar
8821421357
Docs, json::Value::U64, and bring many of the rust-serialize fns to Value
2015-03-18 20:51:48 -07:00
Erick Tryzelaar
eb4af09456
Simplify the variant deserializer visitor
2015-03-18 07:35:05 -07:00
Erick Tryzelaar
78137ee3a4
Rewrite enum deserialization to not require allocations
2015-03-16 22:42:04 -07:00
Erick Tryzelaar
b40d8f7bac
Remove the first
argument from visit_{seq,map}_elt
2015-03-16 22:30:02 -07:00
Erick Tryzelaar
a6ba251ef9
Enable a missing field test
2015-03-16 21:23:20 -07:00
Oliver Schneider
f21cbb71e2
MapVisitor::end and SeqVisitor::end were mostly never called
2015-03-16 13:27:00 +01:00
Erick Tryzelaar
9fc9d1b33a
Get rid of syntax::ext::generic from #[derive_deserialize]
2015-03-15 17:47:25 -07:00
Erick Tryzelaar
8cb2ff6e2e
Fix multiple unnamed enum seq/map variants
...
Closes #32 .
2015-03-13 23:44:18 -07:00
Erick Tryzelaar
dc87288f48
Allow json missing fields to be treated as a null
...
Closes #34 .
2015-03-12 20:44:16 -07:00
Erick Tryzelaar
5dd53e7ea3
Change ser::{Seq,Map}Visitor to return an optional exact length
...
This is necessary for formats that serialize the length in the
format stream. Those formats need the exact length, so the
iterator-style size_hint has the wrong semantics.
2015-03-12 19:40:46 -07:00
Erick Tryzelaar
9e454a243a
Rename Serialize::visit to Serialize::serialize
2015-03-12 07:33:34 -07:00
Erick Tryzelaar
3f62b6d2bf
Merge ser::Serializer and ser::Visitor
2015-03-11 11:05:46 -07:00
Erick Tryzelaar
fbd6d1974a
Remove the unused Serializer::Value associated type
2015-03-11 10:15:27 -07:00
Erick Tryzelaar
805a3435cf
Replace serde1 with serde2!
...
Closes #26 !
2015-03-08 22:56:33 -07:00
Erick Tryzelaar
004a89510e
ported over to the new std::io, but it's half the speed of std::old_io
2015-02-14 10:01:22 -08:00
Erick Tryzelaar
4dccf8cdec
Clean up warnings in serde
2015-02-13 10:26:13 -08:00
Thomas Bahn
9a284ae7c2
Follow rust std: fmt::Show
was renamed to fmt::Debug
2015-02-06 22:23:16 +01:00
Thomas Bahn
5dd077969c
Use slicing syntax instead of .as_slice()
2015-02-06 22:23:16 +01:00
Thomas Bahn
3022d7301a
Use deref coercions when possible
2015-02-06 22:23:15 +01:00
Thomas Bahn
361acd37d0
Follow rust std: int, uint were renamed to isize, usize
2015-02-06 22:23:15 +01:00
Erick Tryzelaar
8715a41158
Update to rust HEAD
2015-01-07 09:30:11 -08:00
Erick Tryzelaar
b98719a4a0
update to rust HEAD, switch to rustc_serialize
2015-01-04 17:18:50 -08:00
Erick Tryzelaar
21a58e86e4
Rename Serializable to Serialize, Deserializable to Deserialize
2014-11-13 07:54:44 -08:00
kvark
2224e9afdf
Fixed the struct map interaction with serial_name. Added a separarte JSON test for serial_name.
2014-09-07 10:43:15 -04:00