Dirkjan Ochtman
|
526414cd4b
|
Refactor macros crate
|
2022-11-25 21:47:25 -08:00 |
Dirkjan Ochtman
|
aace036ea9
|
Improve support for Vec fields
|
2022-11-25 21:47:25 -08:00 |
Dirkjan Ochtman
|
1e3ae38b25
|
Implement matches() method on Kind
|
2022-11-25 21:47:25 -08:00 |
Dirkjan Ochtman
|
32426d77ba
|
Report kind of missing value
|
2022-11-25 21:47:25 -08:00 |
Dirkjan Ochtman
|
eb2cfd59f9
|
Improve error reporting
|
2022-11-25 21:47:25 -08:00 |
Dirkjan Ochtman
|
f6e22b3e31
|
Add support for serialize_with attribute
|
2022-11-25 21:47:25 -08:00 |
Dirkjan Ochtman
|
61df3a7835
|
Sanitize macro unit tests
|
2022-11-23 12:23:51 -08:00 |
Dirkjan Ochtman
|
0be0b6cc45
|
Implement support for wrapped enum mode
|
2022-11-23 12:23:51 -08:00 |
Dirkjan Ochtman
|
1190c5c345
|
Allow Kind to be variant over lifetime
|
2022-11-23 12:23:51 -08:00 |
Dirkjan Ochtman
|
433b0197bb
|
Fix formatting
|
2022-11-23 12:23:51 -08:00 |
Dirkjan Ochtman
|
a4f35e5daa
|
Generalize scalar to enum mode
|
2022-11-23 12:23:51 -08:00 |
Dirkjan Ochtman
|
055a654a3d
|
Add support for generic type arguments
|
2022-11-22 05:50:31 +01:00 |
Dirkjan Ochtman
|
413ec05c52
|
Avoid consts for deserialization field recognition
|
2022-11-22 05:50:31 +01:00 |
Dirkjan Ochtman
|
0be3c92d27
|
Fix formatting
|
2022-11-22 05:50:31 +01:00 |
rsdy
|
4d627b514a
|
Use field name as tag for `Vec` serialization
|
2022-10-03 11:23:07 +02:00 |
rsdy
|
44f8a2cc6d
|
Reduce code redundancy (#28)
|
2022-09-27 18:23:28 +02:00 |
rsdy
|
4a61982792
|
Add enum integration test and fix ser/de logic
|
2022-09-27 14:03:09 +02:00 |
rsdy
|
5890676710
|
Implement better error reporting using spans of token subtrees
|
2022-09-26 15:09:06 +02:00 |
rsdy
|
23ac36b559
|
Review follow-ups
|
2022-09-26 14:15:00 +02:00 |
rsdy
|
0d29741b6f
|
Use string literals instead of idents for `rename_all`
|
2022-09-26 14:15:00 +02:00 |
rsdy
|
92dc3c8e73
|
Clippy lint error
|
2022-09-26 14:15:00 +02:00 |
rsdy
|
7cf93d15eb
|
Enable rename_all attribute on fields and structs
|
2022-09-26 14:15:00 +02:00 |
rsdy
|
f017331a69
|
Add serde renamer
|
2022-09-26 14:15:00 +02:00 |
rsdy
|
1a6be5e46f
|
Add scalar enum management
|
2022-09-22 15:04:48 +02:00 |
rsdy
|
cfd5d48841
|
Extract struct handling for ser/de macros
|
2022-09-22 15:04:48 +02:00 |
Dirkjan Ochtman
|
fb7570056d
|
Add support for rename annotations
|
2022-09-07 22:35:36 +02:00 |
Dirkjan Ochtman
|
f64634155e
|
Fix support for attributes with no default namespace fallback
|
2022-09-07 22:35:36 +02:00 |
Dirkjan Ochtman
|
b30859929b
|
Mandate that attribute namespaces are valid prefixes
|
2022-09-07 21:38:44 +02:00 |
Dirkjan Ochtman
|
570cdc81a5
|
Fix prefixes on close tags
|
2022-09-07 21:38:44 +02:00 |
Dirkjan Ochtman
|
7d241959d8
|
Centralize serializer prefix logic in one place
|
2022-09-07 13:06:44 +02:00 |
Dirkjan Ochtman
|
110605ba99
|
Handle namespaces in serializer in a more principled way
|
2022-09-07 13:06:44 +02:00 |
Dirkjan Ochtman
|
6238ed87c5
|
Turn serializer API into a proper abstraction
|
2022-09-07 13:06:44 +02:00 |
Dirkjan Ochtman
|
c8cc5f5a48
|
Simplify output token stream for ToXml macro
|
2022-09-07 13:06:44 +02:00 |
Dirkjan Ochtman
|
cd37e306ad
|
Rename fields to raw keywords
|
2022-09-07 13:06:44 +02:00 |
Dirkjan Ochtman
|
674039a791
|
Simplify deserializer macro setup
|
2022-09-07 13:06:44 +02:00 |
Dirkjan Ochtman
|
01c896a9b2
|
Remove indirection through Visitor
|
2022-09-07 13:06:44 +02:00 |
Dirkjan Ochtman
|
4b0d5a7698
|
Simplify deserializer token stream
|
2022-09-07 13:06:44 +02:00 |
Dirkjan Ochtman
|
6c0cb83189
|
Use error variant for field duplicates
|
2022-09-07 13:06:44 +02:00 |
Dirkjan Ochtman
|
ebc29b5761
|
Rename types and variables to better reflect contents
|
2022-09-07 13:06:44 +02:00 |
Dirkjan Ochtman
|
ebb6ebb52c
|
Move types to better scoped modules
|
2022-09-07 13:06:44 +02:00 |
Dirkjan Ochtman
|
685189f00d
|
Allow paths as namespace values
|
2022-09-07 13:06:44 +02:00 |
Dirkjan Ochtman
|
11cca274b2
|
Separate Context out of Deserializer
|
2022-09-07 13:06:44 +02:00 |
Dirkjan Ochtman
|
859df7ae24
|
No need to pass visitor instance to methods
|
2022-09-07 13:06:44 +02:00 |
Dirkjan Ochtman
|
000b47628b
|
Use split_for_impl() to improve generics handling
|
2022-09-07 13:06:44 +02:00 |
Dirkjan Ochtman
|
afdbf2dc45
|
Move serialization macro into module
|
2022-09-07 13:06:44 +02:00 |
Dirkjan Ochtman
|
9577aace57
|
Move user-facing serialization interface out of trait
|
2022-09-07 13:06:44 +02:00 |
Dirkjan Ochtman
|
921e094925
|
Use Id type to make namespaces explicit part of node identity
|
2022-09-07 13:06:44 +02:00 |
Dirkjan Ochtman
|
f42f9fd811
|
Introduce Node layer to gain full access to parsed element
|
2022-09-07 13:06:44 +02:00 |
Dirkjan Ochtman
|
611db8335e
|
Derive Debug for more types
|
2022-09-07 13:06:44 +02:00 |
Dirkjan Ochtman
|
25089014fb
|
Rename namespace to ns in attributes
This more closely mimics the way xmlns gets used in XML in
addition to being more concise.
|
2022-09-07 13:06:44 +02:00 |
Dirkjan Ochtman
|
dee065cd9a
|
Refactor how attributes are parsed
|
2022-09-01 17:41:33 +02:00 |
Dirkjan Ochtman
|
bebeba8d72
|
Clarify FromXml identity const
|
2022-09-01 17:41:33 +02:00 |
Dirkjan Ochtman
|
9cfee92d03
|
Move serializer code into ser module
|
2022-09-01 17:41:33 +02:00 |
Dirkjan Ochtman
|
f7bbc00172
|
Move deserializer code into de module
|
2022-09-01 17:41:33 +02:00 |
Dirkjan Ochtman
|
c04c277b49
|
Rename se module to ser
|
2022-09-01 17:41:33 +02:00 |
Dirkjan Ochtman
|
4563ec0db6
|
Use &'static str in TagName
|
2022-09-01 17:41:33 +02:00 |
Dirkjan Ochtman
|
14746d9854
|
Inline enum matching functions
|
2022-09-01 17:41:33 +02:00 |
Dirkjan Ochtman
|
e03a6ea087
|
Rename get_namespaces() to namespaces()
|
2022-09-01 17:41:33 +02:00 |
Dirkjan Ochtman
|
d623fa32ab
|
Move namespace comparison into Deserializer method
|
2022-09-01 17:41:33 +02:00 |
Dirkjan Ochtman
|
c6a6e707a4
|
Fix spelling errors
|
2022-09-01 17:41:33 +02:00 |
Dirkjan Ochtman
|
c62bf5632d
|
Simplify trait bound declarations
|
2022-09-01 17:41:33 +02:00 |
Dirkjan Ochtman
|
891fc81e9e
|
Remove debugging cruft
|
2022-09-01 17:41:33 +02:00 |
choinskib
|
ebd913f603
|
Deserialize scalars (#14)
Co-authored-by: Dirkjan Ochtman <dirkjan@ochtman.nl>
|
2022-09-01 13:28:40 +02:00 |
choinskib
|
c553b22310
|
Serializer scalars (#15)
|
2022-09-01 09:24:18 +02:00 |
choinskib
|
2a9901bc84
|
Serializer namespaces and attributes (#13)
|
2022-08-31 17:03:01 +02:00 |
choinskib
|
fcf20aa507
|
Namespaces fixes - deserializer (#10)
|
2022-08-25 13:16:19 +02:00 |
choinskib
|
ba40445c5e
|
Simple deserializer (#7)
|
2022-08-23 13:34:25 +02:00 |
Bartlomiej Choinski
|
b0e09962bd
|
serializer changes extractet from simple-deserializer branch
|
2022-08-12 17:46:07 +02:00 |
choinskib
|
3e9f978846
|
Serialization of custom fields (#6)
|
2022-08-03 13:19:13 +02:00 |
choinskib
|
afc39e276d
|
Handling namespaces attributes in fields (#4)
|
2022-07-04 14:33:54 +02:00 |
Dirkjan Ochtman
|
49212976a2
|
Inline get_meta_items()
|
2022-06-13 11:47:34 +02:00 |
Dirkjan Ochtman
|
df244e89b6
|
Avoid unnecessary allocation
|
2022-06-13 11:47:34 +02:00 |
Bartlomiej Choinski
|
1d9081b07a
|
Default namespace working version
|
2022-06-13 11:47:34 +02:00 |
Bartlomiej Choinski
|
99a7d561e0
|
Implement serialization for structs with named fields
|
2022-06-13 11:10:26 +02:00 |
Dirkjan Ochtman
|
6cde0d79e4
|
Add licenses
|
2022-06-09 10:52:30 +02:00 |
Dirkjan Ochtman
|
b5b5d376c2
|
Passing extended first test
|
2022-05-13 18:26:56 +02:00 |
Dirkjan Ochtman
|
6dd096123d
|
Passing first test
|
2022-04-29 18:01:35 +02:00 |