cbffe5e545
There are few reasons to do this: - it's difficult to add symbol interning to combine-based parsers like tx-parser -- literally every type changes to reflect the interner, and that means every convenience macro we've built needs to chagne. It's trivial to add interning to rust-peg-based parsers. - combine has rolled forward to 3.2, and I spent a similar amount of time investigating how to upgrade tx-parser (to take advantage of the new parser! macros in combine that I think are necessary for adapting to changing types) as I did just converting to rust-peg. - it's easy to improve the error messages in rust-peg, where-as I have tried twice to improve the nested error messages in combine and am stumped. - it's roughly 4x faster to parse strings directly as opposed to edn::ValueAndSpan, and it'll be even better when we intern directly.
17 lines
565 B
Text
17 lines
565 B
Text
|
|
running 5 tests
|
|
test tests::test_add ... ignored
|
|
test tests::test_lookup_ref ... ignored
|
|
test tests::test_map_notation ... ignored
|
|
test tests::test_nested_vector ... ignored
|
|
test tests::test_retract ... ignored
|
|
|
|
test result: ok. 0 passed; 0 failed; 5 ignored; 0 measured; 0 filtered out
|
|
|
|
|
|
running 3 tests
|
|
test bench_parse1 ... bench: 2,799 ns/iter (+/- 801)
|
|
test bench_parse2 ... bench: 191,856 ns/iter (+/- 19,331)
|
|
test bench_parse3 ... bench: 53,925 ns/iter (+/- 10,299)
|
|
|
|
test result: ok. 0 passed; 0 failed; 0 ignored; 3 measured; 0 filtered out
|