Commit Graph
100 Commits
Author SHA1 Message Date
Erick Tryzelaar c369010d3d Allow json::de to work with io::Read 2015-03-24 08:55:20 -07:00
Erick Tryzelaar 1618faed63 Add deserialization impls for {BTree,Hash}{Map,Set} 2015-03-23 19:02:20 -07:00
Erick Tryzelaar 9059b734aa Merge pull request #46 from oli-obk/no_rustc_serialize_propagation
require rustc-serialize only in tests and benchmarks
2015-03-23 17:59:55 -07:00
Erick Tryzelaar 89f463111e Merge pull request #42 from Byron/master
fix(macros): fully qualified usage of `Result`
2015-03-23 09:59:55 -07:00
Erick Tryzelaar 17c295680e Remove an unused variable 2015-03-20 08:47:48 -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 c8b2ad01b5 Update to rust HEAD 2015-03-19 20:19:49 -07:00
Erick Tryzelaar e778c7e25c Update to rust HEAD 2015-03-19 20:19:48 -07:00
Erick Tryzelaar f0d0dd2982 Merge pull request #41 from hugoduncan/feature/mark-field-attributes-used
Mark serde field attributes as used
2015-03-19 20:08:50 -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
Erick Tryzelaar c6cc2340c8 Rename a variable 2015-03-16 21:11:30 -07:00
Erick Tryzelaar a212ef11a9 Fix compiling bench_struct 2015-03-16 21:10:16 -07:00
Erick Tryzelaar 7bd4c6963b Merge pull request #37 from oli-obk/fix_seq_map_end
MapVisitor::end and SeqVisitor::end were mostly never called
2015-03-16 20:54:35 -07:00
Erick Tryzelaar f4f8194f46 More cleanup 2015-03-15 18:38:52 -07:00
Erick Tryzelaar 90e02206fe Cleanup, and move default::Default #[derive_deserialize] support to get called when missing 2015-03-15 18:37:26 -07:00
Erick Tryzelaar 9fc9d1b33a Get rid of syntax::ext::generic from #[derive_deserialize] 2015-03-15 17:47:25 -07:00
Erick Tryzelaar b9f5d22630 Spring cleaning 2015-03-15 15:31:31 -07:00
Erick Tryzelaar cbafc83af4 Cleanup palooza 2015-03-15 15:14:57 -07:00
Erick Tryzelaar b628446768 Cleanup train 2015-03-15 15:04:11 -07:00
Erick Tryzelaar aacc14ad7b More cleanup 2015-03-15 14:50:00 -07:00
Erick Tryzelaar 35eb234c41 More aster driven cleanup 2015-03-15 14:31:05 -07:00
Erick Tryzelaar 989c8ff809 Include running the benchmarks in travis 2015-03-15 13:12:21 -07:00
Erick Tryzelaar 49c2585a20 Try to fix travis 2015-03-15 13:08:08 -07:00
Erick Tryzelaar 9972478066 Fix #35 by not relying on the crate being import in the current module 2015-03-15 13:02:34 -07:00
Erick Tryzelaar 00287bd055 Cleanup 2015-03-14 21:47:23 -07:00
Erick Tryzelaar 11f47bd51f Minor cleanup 2015-03-14 15:20:00 -07:00
Erick Tryzelaar 5e98a83717 Remove redundant bounds 2015-03-14 15:03:41 -07:00
Erick Tryzelaar ec8b7c9b89 Update to rust HEAD 2015-03-14 14:57:13 -07:00
Erick Tryzelaar 008ce75ae5 Replace #[derive_serialize] syntax::ext::deriving::generic with aster 2015-03-14 14:57:05 -07:00
Erick Tryzelaar 5c62b7ed06 Split serde_macros into multiple files 2015-03-14 13:09:37 -07:00
Erick Tryzelaar 99f4efd313 Merge #[derive_serialize] for structs and struct variants 2015-03-14 12:53:53 -07:00
Erick Tryzelaar 87ff636c10 Fix some warnings 2015-03-14 12:03:53 -07:00
Erick Tryzelaar d2bd361d9c Merge #[derive_serialize] backend for serializing tuple structs and variants 2015-03-14 12:02:21 -07:00
Erick Tryzelaar 5a32d420cd More cleanup 2015-03-14 00:47:10 -07:00
Erick Tryzelaar a3b2f00c92 More cleanup 2015-03-14 00:08:23 -07:00
Erick Tryzelaar 13fcf1ad5b More cleanup 2015-03-14 00:04: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 c917941ec3 More cleanup 2015-03-13 23:43:21 -07:00
Erick Tryzelaar f699d29fb3 More cleanup 2015-03-13 23:38:12 -07:00
Erick Tryzelaar 6723097a3f More cleanup 2015-03-13 23:26:38 -07:00
Erick Tryzelaar 80e27344f1 More cleanup 2015-03-13 23:17:44 -07:00
Erick Tryzelaar f244e0f522 More cleanup 2015-03-13 23:11:05 -07:00
Erick Tryzelaar 61317f5935 Replace some aster with quasi in serde_macros 2015-03-13 22:46:21 -07:00
Erick Tryzelaar 9ca1e2a8f7 Bump aster and quasi 2015-03-13 19:37:01 -07:00
Erick Tryzelaar aedd5f57cf Split json compact and pretty serializer. Recover 20MB/s 2015-03-12 21:15:47 -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 5d22be26d8 Fixed the description 2015-03-08 23:12:33 -07:00
Erick Tryzelaar 28f43993f2 Add cargo metadata 2015-03-08 23:02:44 -07:00
Erick Tryzelaar e798108785 Bump quasi and aster dependencies 2015-03-08 22:59:25 -07:00
Erick Tryzelaar 805a3435cf Replace serde1 with serde2!
Closes #26!
2015-03-08 22:56:33 -07:00
Erick Tryzelaar 6726bd12ae Port the rest of the benchmarks to serde2 2015-03-08 22:38:01 -07:00
Erick Tryzelaar e892d9e935 Silence a warning 2015-03-08 19:08:43 -07:00
Erick Tryzelaar 1cda1f71a7 Implement #[derive_deserialize] for generic enums 2015-03-08 19:07:23 -07:00
Erick Tryzelaar 419f34c665 Fix #[derive_deserialize] for generic structs 2015-03-08 18:46:41 -07:00
Erick Tryzelaar cdb3ed30ab Even more to aster 2015-03-08 18:33:23 -07:00
Erick Tryzelaar 2e8c70b833 Port more to aster 2015-03-08 12:56:59 -07:00
Erick Tryzelaar 9134cff155 #[derive_deserialize] for generic tuple structs 2015-03-08 11:39:20 -07:00
Erick Tryzelaar 8bcdd7afe8 Compile on HEAD 2015-03-08 11:05:01 -07:00
Erick Tryzelaar 21e6d3163f Add test for deserializing named units 2015-03-07 21:40:53 -08:00
Erick Tryzelaar 6e51195930 Switch to aster 2015-03-07 21:01:51 -08:00
Erick Tryzelaar 2a6c836682 Switch to using quasi 2015-03-07 19:30:41 -08:00
Erick Tryzelaar d9f78e3112 Clean up dead code 2015-03-07 19:30:25 -08:00
Erick Tryzelaar 4a83639b33 Port more over to ast-builder 2015-03-07 15:08:44 -08:00
Erick Tryzelaar 124a306cd7 Fix #[derive_serialize] for generic structs 2015-03-06 22:14:13 -08:00
Erick Tryzelaar a565df9cf7 Fix #[derive_serialize] for tuple structs 2015-03-06 19:11:47 -08:00
Erick Tryzelaar 6b7aa269b8 Implement impls for std::path::Path{,Buf}
Closes #28.
2015-03-05 22:39:35 -08:00
Erick Tryzelaar 776e6448a2 Merge pull request #27 from hugoduncan/fix_unqualified_de
Fix plugin use of de::SeqVisitor
2015-03-05 22:21:19 -08:00
Erick Tryzelaar 00b502a6d2 Add a json pretty printer 2015-03-05 22:16:11 -08:00
Erick Tryzelaar 58761d3d19 Convert over to where clauses 2015-03-05 20:07:40 -08:00
Erick Tryzelaar 9db40b008f Add tests and remove dead comments 2015-03-05 20:06:03 -08:00
Erick Tryzelaar ab9494c42b Add a .gitignore to serde2_macros 2015-03-05 19:51:00 -08:00
Erick Tryzelaar 2ee5a416ad Factor out the remaining json tests into tests/ 2015-03-05 19:49:17 -08:00
Erick Tryzelaar 5c06137499 Silence a warning 2015-03-05 19:17:23 -08:00
Erick Tryzelaar ddfaf9d177 Add Deserializer::visit_enum to help json enum deserialization 2015-03-05 19:17:18 -08:00
Erick Tryzelaar 1b632cea9c Remove unnecessary inlines 2015-03-05 07:35:55 -08:00
Erick Tryzelaar e7ce710da5 Fix parsing json into optional types
Does not yet handle parsing missing values as `None` yet though.
Closes #25.
2015-03-04 09:45:11 -08:00
Erick Tryzelaar e9f356755f Add json value deserializer 2015-03-04 09:45:11 -08:00
Erick Tryzelaar cd3cad8ef5 Fix serializing json enums 2015-03-04 09:45:11 -08:00
Erick Tryzelaar 4b2354597d Start fixing the json tests 2015-03-04 09:44:56 -08:00
Erick Tryzelaar 6685d76e2c Initial switch to syntax_ast_builder 2015-03-04 07:07:04 -08:00
Erick Tryzelaar b2f52df5ff Fix serializing json objects 2015-03-03 21:55:48 -08:00
Erick Tryzelaar 6382441f2e Rename the json tests 2015-03-03 21:47:42 -08:00
Erick Tryzelaar 189b3f0394 Add test for #[derive_serialize] for structs 2015-03-03 21:42:33 -08:00
Erick Tryzelaar 4db8b732f1 Simplify test_de 2015-03-03 21:35:49 -08:00
Erick Tryzelaar 37bc3e9df3 Fix #[derive_deserialize] for deserializing empty sequences named units 2015-03-03 21:33:51 -08:00
Erick Tryzelaar 79a7bc9bf2 convert to where clauses 2015-03-03 21:27:07 -08:00
Erick Tryzelaar 098cd335ce Factor de tests into it's own file 2015-03-03 21:19:55 -08:00
Erick Tryzelaar 7a170e1b2c Fix #[derive_serialize] for enum struct variants 2015-03-03 21:17:40 -08:00
Erick Tryzelaar fe64145c06 Fix #[derive_serialize] for tuple structs 2015-03-03 21:14:43 -08:00
Erick Tryzelaar 61fdcb0611 Add the json tests 2015-03-03 20:33:25 -08:00