Commit Graph

106 Commits

Author SHA1 Message Date
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
e9e339afc9 Stop defining namespaces through prefixes on fields 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
2827bd404e Move user-facing deserialization 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
7fa6340f8e Inline single-use method consume_next_def_namespace() 2022-09-07 13:06:44 +02:00
Dirkjan Ochtman
6e0b105b8b Inline single-use method compare_parser_and_def_default_namespaces() 2022-09-07 13:06:44 +02:00
Dirkjan Ochtman
2267863ae7 Inline single-use method check_close_tag() 2022-09-07 13:06:44 +02:00
Dirkjan Ochtman
2de53e3009 Rename TagData fields 2022-09-07 13:06:44 +02:00
Dirkjan Ochtman
37098393be Split tests into multiple files 2022-09-07 13:06:44 +02:00
Dirkjan Ochtman
f6d7a51fff Use similar-asserts for test cases 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
edc1fbd64c Avoid elided lifetimes to refer to XML lifetime 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