Commit Graph

753 Commits

Author SHA1 Message Date
Erick Tryzelaar
cc67c97224 Merge remote-tracking branch 'remotes/origin/master' into error-take-2 2015-10-18 19:43:32 -07:00
Erick Tryzelaar
bd87485251 Merge pull request #168 from pwoolcoc/num-no-default-features
Opt-out of `num`s `default-features`
2015-10-17 20:52:31 -07:00
Paul Woolcock
7ef2205f80 fix(dependencies): Opt-out of default features of num 2015-10-17 23:31:36 -04:00
Erick Tryzelaar
72de877ec3 Merge pull request #173 from erickt/update
Update aster, quasi, and syntex
2015-10-17 20:03:15 -07:00
Erick Tryzelaar
f872b3fb4b fix(cargo): Update aster, quasi, and syntex 2015-10-17 19:44:07 -07:00
Erick Tryzelaar
ddc33ee747 cleanup(whitespace): Fix some whitespace issues 2015-10-14 08:52:25 -07:00
Erick Tryzelaar
612e384b03 Merge pull request #171 from oli-obk/fix_skip_empty_field_ser
$value_expr starting with a & took address of resulting bool
2015-10-12 13:41:23 -07:00
Oliver Schneider
1c88856fc8 $value_expr starting with a & took address of resulting bool 2015-10-12 11:04:50 +02:00
Thomas Bahn
0b5e91d430 feat: Add deserializers that use visitors.
This deserializers can be used to delegate deserialization to another
type's visitor.

Example:
```json
fn visit_map<V>(&mut self, visitor: V) -> Result<Self::Value, V::Error>
    where V: de::MapVisitor
{
    let mut deserializer = de::value::MapVisitorDeserializer::new(visitor);
    try!(Deserialize::deserialize(&mut deserializer))
}
```
2015-10-08 15:22:02 +02:00
Erick Tryzelaar
534e6d1f4c Merge pull request #167 from pwoolcoc/patch-1
Fix code block end marker
2015-10-06 11:50:54 -07:00
Paul Woolcock
7ad31a01dd Fix code block end marker
Looks like someone accidentally removed the `\`\`\`` from the end of a code block, causing the `Serialization without Macros` section to be formatted like code
2015-10-06 14:04:54 -04:00
Thomas Bahn
e0429cdd96 style: remove the redundant Error suffix 2015-10-06 01:37:39 +02:00
Thomas Bahn
7413bbb7bf feat: ValueDeserializers are generic over the error type
This makes it possible to remove the `From<de::value::Error>` trait
bound from the `de::Error` trait.

An example for using a `ValueDeserializer` to forward deserializing to
another type's visitor:

```rust
fn visit_u8<E>(&mut self, value: u8) -> Result<Self::Value, E>
    where E: de::Error
{
    try!(Deserialize::deserialize(&mut value.into_deserializer()))
}
```

Please note that there is an regression in serde-rs/json which needs to
be fixed.
2015-10-06 01:37:39 +02:00
Erick Tryzelaar
00cd2900e7 Merge pull request #155 from erickt/skip
Add skip serializing fields if empty or none
2015-10-05 14:51:46 -07:00
Erick Tryzelaar
05a238fac4 Merge pull request #164 from serde-rs/oli-obk-patch-1
add link to the README from the docs
2015-10-05 14:49:46 -07:00
Thomas Bahn
0a65153634 fix: forward more errors in de::value::Error
When using a `ValueDeserializer` errors produced with the methods
`type_mismatch`, `length_mismatch` and `syntax` were not forwarded
correctly. These methods now store all information in the enum
`de::value::Error`.
2015-10-05 23:40:36 +02:00
Oliver Schneider
310db21d64 add link to the README from the docs
The small starting page in the docs was noted at https://users.rust-lang.org/t/lets-talk-about-ecosystem-documentation/2791/25
2015-10-05 15:57:01 +02:00
Erick Tryzelaar
72af0896e8 docs(codegen): Document annotations 2015-09-07 16:59:11 -07:00
Erick Tryzelaar
c4392ff256 feat(codegen): Add more attributes to skip serializing
These attributes are `#[serde(skip_serializing_if_none)]` and
`#[serde(skip_serializing_if_empty)]`.
2015-09-07 16:58:52 -07:00
Erick Tryzelaar
c68ab508c0 refactor(codegen): Simplify parsing attributes 2015-09-07 16:58:52 -07:00
Erick Tryzelaar
76cca814f0 docs(readme): Improve the readme 2015-09-07 16:58:46 -07:00
Erick Tryzelaar
22b69fc5c9 docs(serde): Fix typo 2015-09-07 13:02:53 -07:00
Homu
a1bd0c1667 Auto merge of #153 - erickt:doc, r=erickt
Start documenting everything
2015-09-03 00:54:55 +09:00
Erick Tryzelaar
48ea75fddc Bump version
This is because I removed some public, but unused things
2015-09-02 08:54:01 -07:00
Erick Tryzelaar
4b49f716b9 Document serde:🇩🇪:impls. 2015-09-02 08:36:14 -07:00
Erick Tryzelaar
55f5f397d7 Document serde:🇩🇪:value 2015-09-02 08:36:14 -07:00
Erick Tryzelaar
4be4f60f21 Document serde:🇩🇪:mod. 2015-09-02 08:36:14 -07:00
Erick Tryzelaar
9a8037bbf2 Remove unused Enum{Seq,Map}Visitor 2015-09-02 08:36:14 -07:00
Erick Tryzelaar
c7f1af90b2 Document serde::iter 2015-09-02 08:36:14 -07:00
Erick Tryzelaar
902d3a0aa5 Document serde::bytes. 2015-09-02 08:36:14 -07:00
Erick Tryzelaar
c14eb28223 Remove unused buf module. 2015-09-02 08:36:14 -07:00
Erick Tryzelaar
2722a04e52 Document serde::ser::impls 2015-09-02 08:36:14 -07:00
Erick Tryzelaar
5dbcd7957a Start documenting everything, starting with serde::ser. 2015-09-01 08:02:17 -07:00
Erick Tryzelaar
7511eeae7b Version bump
Closes #149
2015-08-31 10:04:34 -07:00
Erick Tryzelaar
5f4a7e54bc Fix README deserialization-without-macros example
Closes #150.
2015-08-31 09:23:33 -07:00
Erick Tryzelaar
b7e3058078 Add coverage badge 2015-08-29 21:09:20 -07:00
Erick Tryzelaar
f3358cc377 Merge pull request #144 from erickt/master
Factor serde_json out into it's own module
2015-08-29 21:06:21 -07:00
Erick Tryzelaar
fa3460e0a7 Migrate serde_json into it's own repo
New location is https://github.com/serde-rs/json.
2015-08-29 18:09:51 -07:00
Erick Tryzelaar
42069ca669 Refactor tests to not use serde_json 2015-08-29 17:29:42 -07:00
Homu
acc7141b64 Auto merge of #145 - erickt:travis, r=erickt
Travis work
2015-08-30 08:31:25 +09:00
Erick Tryzelaar
3e1b950b14 Merge pull request #147 from jmesmon/fix-readme
readme: fix example code so it builds
2015-08-28 08:31:17 -07:00
Cody P Schafer
b50b702d1c readme: fix example code so it builds
Might be worthwhile to look at trying to automate testing the code in
the README (perhaps by generating the README from some special tests).
2015-08-28 11:27:03 -04:00
Erick Tryzelaar
caddd11c15 Travis work 2015-08-27 22:51:11 -07:00
Erick Tryzelaar
5711e3d860 Merge pull request #143 from 3Hren/master
Add a Sized requirement to the Deserialize trait.
2015-08-24 21:41:58 -07:00
Evgeny Safronov
8b1058b8ec Add a Sized requirement to the Deserialize trait. 2015-08-24 18:44:19 +03:00
Erick Tryzelaar
092ba6dae2 Merge pull request #139 from erickt/str-keys
Reject serializing maps to JSON with non-string keys
2015-08-19 09:01:27 -07:00
Erick Tryzelaar
cab653e7c7 Version bump 2015-08-18 12:50:39 -07:00
Erick Tryzelaar
8d999a8edd VecMap was removed from libcollections 2015-08-18 12:49:50 -07:00
Erick Tryzelaar
7b773ac088 Merge pull request #138 from erickt/master
Expose serde_json::from_{iter,reader,slice}
2015-08-13 22:32:34 -07:00
Erick Tryzelaar
4f6b27eec1 Black box json benchmark numbers
This prevents the optimizer from optimizing away the thing
we're benchmarking.
2015-08-13 22:30:02 -07:00