Commit Graph

11 Commits

Author SHA1 Message Date
Alain Emilia Anna Zscheile cda50cedbf refactor(specctra-core/read): accept multiple possible names anywhere
Previously, some methods handled items/lists with multiple allowed names,
and some only allowed a single name. As the overhead of always handling
multiple names isn't that large, do that everywhere and make the overall
API more streamlined in the process.
2024-12-11 20:18:45 +01:00
Alain Emilia Anna Zscheile a36dc57321 refactor(specctra-core/read): use macro to produce repetitive impl ReadDsn via FromStr 2024-12-11 20:18:45 +01:00
Alain Emilia Anna Zscheile da56cec486 refactor(specctra-core/read): align read_optional to be like read_array_with_alias 2024-12-11 20:18:45 +01:00
Alain Emilia Anna Zscheile ae1676de9b feat(specctra-core/error): separate errors for expected leaf / end-of-list 2024-12-11 20:18:44 +01:00
Alain Emilia Anna Zscheile 9e0bdb5bc7 refactor: various further refactorings (#128)
These optimize out unnecessary code duplication, reserve vector capacity beforehand by leveraging `Iterator`s and avoid unnecessary double-lookups into HashMaps.

Reviewed-on: https://codeberg.org/topola/topola/pulls/128
Co-authored-by: Alain Emilia Anna Zscheile <fogti+devel@ytrizja.de>
Co-committed-by: Alain Emilia Anna Zscheile <fogti+devel@ytrizja.de>
2024-12-11 14:13:21 +00:00
Alain Emilia Anna Zscheile cbf99e0a6e feat(specctra-core-fuzz): actually test roundtrip through serialization+parsing 2024-12-06 14:38:09 +01:00
Alain Emilia Anna Zscheile e381731475 feat(specctra-core/write): get rid of unnecessary restrictions on method args 2024-12-06 14:38:09 +01:00
Alain Emilia Anna Zscheile acab24d7d4 feat(specctra-core-fuzz): add another fuzz target (for 'Structure') 2024-12-06 14:38:09 +01:00
Alain Emilia Anna Zscheile c1101b4304 doc(specctra-core-fuzz): provide README.md with invocation example 2024-12-06 14:38:09 +01:00
Alain Emilia Anna Zscheile 0b37bb2dbc feat: add rudimentary fuzzer for specctra-core DSN parser
Fixes #110
2024-12-06 14:38:09 +01:00
Alain Emilia Anna Zscheile 0fe23c9c71 build: put `specctra` module into separate crate 2024-12-06 14:38:00 +01:00