Commit Graph

42 Commits

Author SHA1 Message Date
Tony Garnock-Jones cf50e00f80 Repair failing TS bigint tests 2023-10-31 12:53:54 +01:00
Tony Garnock-Jones 9595872177 Test cases and implementation updates for delimiters following Boolean and SymbolOrNumber. Closes #47 2023-10-29 21:04:52 +01:00
Tony Garnock-Jones 4869507b09 Enable text-parser tests in @preserves/core; fix a couple of errors 2023-10-29 18:12:12 +01:00
Tony Garnock-Jones 3b89cbe880 Switch back to prefix-format binary annotations 2023-10-15 00:35:25 +02:00
Tony Garnock-Jones b7a2acf65b Update implementations for simplified binary syntax.
As part of this, I noticed a problem when updating the Rust
implementation. With the BF..84 design for annotations, if you are
wanting to skip annotations—for example, if you're parsing
incrementally, SAX-style, ignoring annotations—then with any
parenthesised form you have to remember to check for and skip something
after reading a term. This is awkward, so I want to revisit the design
of annotations and go back to the prefix-form (85..) of the
current-mainline design.
2023-10-14 21:29:09 +02:00
Tony Garnock-Jones c395265c3b Generalize preserves formatter 2023-10-02 20:59:14 +02:00
Tony Garnock-Jones ac6a138a00 forEachEmbedded 2023-06-16 12:44:22 +02:00
Tony Garnock-Jones 134de6989b parse, parseAll 2023-05-12 11:26:06 +02:00
Tony Garnock-Jones a167e97c00 ValueClass 2023-05-12 11:25:56 +02:00
Tony Garnock-Jones 741b664970 Make field numbers accessible 2023-05-03 10:22:47 +03:00
Tony Garnock-Jones 340f809c55 isSequence 2023-01-05 15:13:23 +01:00
Tony Garnock-Jones 269ed2391a Repair text syntax for numbers and symbols. Closes #19/#36/#37/#38.
Numbers and (bare) Symbols are now disambiguated after reading, which
permits leading `+`, leading `0`, and a wider range of acceptable
Symbols.

Updates spec text, test cases, and implementations. Some ancillary fixes
to Python's comparison routines are also included.
2022-11-08 19:56:24 +01:00
Tony Garnock-Jones 1f495eef1e Repair typo that caused annotations not to work properly with fromJS 2022-06-16 10:10:38 +02:00
Tony Garnock-Jones 800e9ccf80 Repair stringification of nontrivial embedded values 2022-04-27 22:07:53 +03:00
Tony Garnock-Jones 356ff74058 Experimentally (?) use fromJS in stringify 2022-02-09 15:03:36 +01:00
Tony Garnock-Jones d9ee80093b Repair stringifyEmbeddedWrite 2022-01-26 16:41:16 +01:00
Tony Garnock-Jones 574209966b Better stringification 2022-01-26 16:03:13 +01:00
Tony Garnock-Jones 0129901dab Javascript pretty-printer 2022-01-26 14:15:35 +01:00
Tony Garnock-Jones e4792ddccd Improve protocols for (de)coding JS/Preserves somewhat 2022-01-22 23:38:02 +01:00
Tony Garnock-Jones 2721ce81c4 Repair lexicographic ordering among Bytes instances, which in turn repairs canonicalizing binary output, which in turn fixes the tests now there's just been a very long test name symbol added. 2022-01-13 23:30:28 +01:00
Tony Garnock-Jones 3cc875bce3 Handle no-whitespace-after-a-number 2022-01-12 02:02:11 +01:00
Tony Garnock-Jones 2ff4e88822 Repair error in encoder contents extraction. 2021-12-09 21:25:27 +01:00
Tony Garnock-Jones 5a0fbeb1b5 Export JS Symbol, in case of aliasing in a schema 2021-12-09 18:35:17 +01:00
Tony Garnock-Jones f2d9b68329 Slightly nicer embedded-value printing 2021-12-09 18:34:54 +01:00
Tony Garnock-Jones 4afc6d4c94 Repair error in merge 2021-09-10 15:47:16 +02:00
Tony Garnock-Jones 498c63ef67 Repair embedded reading; and preserve annotations in generic embedded values 2021-06-01 16:46:23 +02:00
Tony Garnock-Jones 2559a4713f Much improved refactoring/repair of metaschema 2021-05-24 00:15:31 +02:00
Tony Garnock-Jones e4a2503899 The Great Renaming: Pointer -> Embedded 2021-05-17 14:54:06 +02:00
Tony Garnock-Jones 8442718f96 Fix module cycles (largely by splitting PointerType in two) 2021-04-25 10:42:21 +02:00
Tony Garnock-Jones e5965fde83 Rename DefaultPointer -> GenericPointer 2021-04-24 22:01:16 +02:00
Tony Garnock-Jones 8c783dbc7d Explicit wrapper for Pointers 2021-04-24 21:59:52 +02:00
Tony Garnock-Jones 9f9514a7e6 Handle pointer type nesting properly 2021-04-22 20:51:48 +02:00
Tony Garnock-Jones 1d73289345 First attempt at a merge() utility 2021-03-23 11:36:11 +01:00
Tony Garnock-Jones ca42ffe832 isCompound 2021-03-17 14:24:41 +01:00
Tony Garnock-Jones 05c7343983 Rename and export asLatin1 2021-03-17 12:56:49 +01:00
Tony Garnock-Jones 178f528bf0 Rearrange Dictionary type parameters for improved Record type inference 2021-03-17 12:20:06 +01:00
Tony Garnock-Jones 8f2da8f8db A more... pragmatic DefaultPointer 2021-03-17 10:21:48 +01:00
Tony Garnock-Jones 5afb1469f3 Faster generated decoders 2021-03-14 21:10:47 +01:00
Tony Garnock-Jones 1cc0325007 Different approach to pointer codec; support custom schema-driven decode 2021-03-12 20:41:35 +01:00
Tony Garnock-Jones c8f564aea4 Position tracking in Reader; major driver improvements in schema compiler 2021-03-11 14:43:06 +01:00
Tony Garnock-Jones 036d42a73a Default to pointer type being never instead of object 2021-03-10 23:14:26 +01:00
Tony Garnock-Jones 754306aca3 Rearrange into two packages, using yarn workspaces 2021-03-10 19:24:20 +01:00