Emery Hemingway
e4d6c4f04a
Condense contract and expand to mapEmbeds
2024-01-06 22:19:16 +02:00
Emery Hemingway
78b63ac282
Option support in toPreserves and fromPreserves
2024-01-06 22:19:16 +02:00
Emery Hemingway
9c7839d05a
Step by varargs[Value, toPreserves]
2024-01-06 22:19:16 +02:00
Emery Hemingway
765dbfe640
Add toRecord sugar
2024-01-06 22:19:16 +02:00
Emery Hemingway
f3eb6d3fb8
Add `&` operator
2024-01-06 22:19:16 +02:00
Emery Hemingway
c89e6b5d3d
Remodel Preserves[E] into Value
...
Using a parameterized Preserve[E] type is too much hassle. Replace
with a Value type with an embedded field of "ref RootObj".
2024-01-06 22:19:16 +02:00
Emery Hemingway
c2bce1404a
Add Atom type
...
Type for holding constant Preserves values create at compile-time.
This is a prerequisite for making embedded values "ref RootObj".
It is also requesite for making Value a ref object.
2024-01-01 17:32:52 +02:00
Emery Hemingway
d146b213b4
Add Value alias to Preserve[void]
2024-01-01 17:32:52 +02:00
Emery Hemingway
cedf25d1c3
Split pkSignedInteger into pkRegister and pkBigInt
2024-01-01 17:32:50 +02:00
Emery Hemingway
adadcc181a
Move some of preserves implementation to preserves/private
2023-12-25 10:08:03 +02:00
Emery Hemingway
27a5ace1ea
Fix decoding of annotations
2023-12-24 21:12:30 +02:00
Emery Hemingway
7187a45f9c
Hash nil embedded pointers
2023-11-02 13:33:52 +00:00
Emery Hemingway
0c4ef8269f
Add pop for dictionaries
2023-11-02 13:33:47 +00:00
Emery Hemingway
ca5d44ed32
Step with mulitple indexes
2023-10-28 00:24:27 +01:00
Emery Hemingway
edece399be
Support standard Preserves text encoding as well as JSON
2023-10-21 18:40:14 +01:00
Emery Hemingway
8362a09ec0
Make text rendering JSON compatible
2023-10-20 19:57:09 +01:00
Emery Hemingway
a2dc5becc0
Update binary encoding to Preserves-0.990
2023-10-19 18:14:14 +01:00
Emery Hemingway
c915accf7d
Zero length byte sequences are fine
2023-09-14 10:30:19 +02:00
Emery Hemingway
53981fd70a
Fix post-return compilation warning
2023-09-13 09:38:11 +02:00
Emery Hemingway
ab3bd12c11
Remove bad varint check
2023-09-13 09:38:06 +02:00
Emery Hemingway
15390dd48e
Suppport preservesTupleTail pragma within objects
2023-09-12 11:35:09 +02:00
Emery Hemingway
8b3b182ce7
Do not raise ValueError at early end of binary stream
2023-08-25 19:28:48 +01:00
Emery Hemingway
52faec6e43
Fix varint encoding and decoding
2023-08-25 19:28:48 +01:00
Emery Hemingway
5e2cd329f6
Make apply gcsafe
2023-08-17 14:39:39 +01:00
Emery Hemingway
b563de9ac4
Remove threads and gcsafe where parsing is used
2023-08-16 08:33:11 +01:00
Emery Hemingway
e65dc2271f
Preserve JSON object keys as symbols
2023-08-01 11:09:29 +01:00
Emery Hemingway
5fa72cd25b
Be more consistent about sorting dictionary keys
2023-07-23 08:27:28 +01:00
Emery Hemingway
6008b0ba25
Tidy imports
2023-07-20 23:17:41 +01:00
Emery Hemingway
e6868fabd2
Do not convert string to string
2023-07-20 20:20:36 +01:00
Emery Hemingway
81d04290a5
Use new delete(…)
2023-07-20 19:54:01 +01:00
Emery Hemingway
47e7851beb
Never convert Preserves symbols to Nim strings!
2023-07-20 18:26:29 +01:00
Emery Hemingway
9fa6685071
Add escaping to $ operator for Symbol
2023-06-12 21:01:26 +01:00
Emery Hemingway
10d20600bf
Escape zero-length Symbols
2023-06-11 21:35:28 +01:00
Emery Hemingway
acdfd3c560
Permit fromPreserve for subsets of dictionaries
2023-06-11 21:35:28 +01:00
Emery Hemingway
fa5441bd01
Cannonicalize values at toPreserve
2023-06-11 21:35:28 +01:00
Emery Hemingway
a7a90097a8
Add sort and cannonicalize
2023-06-11 21:33:41 +01:00
Emery Hemingway
0f697349cc
Add isInteger and isString procs for testing against values
2023-05-30 13:11:33 +01:00
Emery Hemingway
c500e99b95
Fix some decoder defects
2023-05-20 13:53:21 +01:00
Emery Hemingway
7718227662
Add step proc for symbols
2023-05-14 22:57:12 +01:00
Emery Hemingway
305edff213
Make toPreserve warning more explicit
2023-04-28 23:59:47 +01:00
Emery Hemingway
30dbed4aa9
Allow for an unlimited DecodeBuffer size
2023-04-03 17:04:12 -05:00
Emery Hemingway
ea7225e3b5
Add toDictionary procedure
2023-04-03 17:03:56 -05:00
Emery Hemingway
466a8d3af4
Add initSequenceOfCap proc
2023-03-29 17:33:39 -05:00
Emery Hemingway
71b6d4c017
Rework the initX[E]() procs to initX(E = void)
2023-03-29 17:32:54 -05:00
Emery Hemingway
5d3f7b94a3
Add isRecord(…) with arity descriminator
2023-03-29 16:47:54 -05:00
Emery Hemingway
786342c39b
Cannot print a void value
2023-03-29 16:47:47 -05:00
Emery Hemingway
b38b85a8f1
Catch IOError at Preserves decoder
2023-03-22 11:21:46 -05:00
Emery Hemingway
6b965c5c0e
Only catch ValueError during decode
2023-03-01 20:58:17 -06:00
Emery Hemingway
dab8f11b9b
Serialize dummy text for embeds
2023-03-01 20:58:17 -06:00
Emery Hemingway
66a653a775
Fix expand of embedded Preserves
2022-12-13 22:05:05 -06:00