Emery Hemingway
c500e99b95
Fix some decoder defects
2023-05-20 13:53:21 +01:00
Emery Hemingway
adec7fd7ad
Rewrite tupfiles
2022-12-11 19:21:17 -06:00
Emery Hemingway
d5909e4df0
Schema: a collection of breaking changes
...
- Process all modules in a bundle simultanously so that it can be
determined if imported types are recursive or take a parameter
- Different rules for deciding when an object must be a ref
- Use Preserve[void] if there is no EmbededTypeName defined
- Put embeddeded types directly into other types without a
Preserve[E] container
2022-12-10 13:32:36 -06:00
Emery Hemingway
60c5f03637
Add preservesEmbedded pragma
2022-12-06 22:30:28 -06:00
Emery Hemingway
ded072c76c
More Tupfiles
2022-12-05 15:56:31 -06:00
Emery Hemingway
ee2d379a65
Add Tupfiles for testing modules
2022-12-02 22:17:53 -06:00
Emery Hemingway
11661d453c
Replace concat with writeText
...
Write to a stream rather than concatentate a string.
2022-10-30 17:26:55 -05:00
Emery Hemingway
aaf5e7ce39
Remove old imports of parse module
2022-04-25 11:53:17 -05:00
Emery Hemingway
486443a098
Remove submodule
2022-02-19 10:33:16 -06:00
Emery Hemingway
7d8c3b29c2
XML conversion
2021-12-06 23:57:47 +00:00
Emery Hemingway
061898c3c2
Escaping fix in parser
2021-12-04 12:02:15 +00:00
Emery Hemingway
7cc0b050f4
Remove support for integers wider than 64 bits
...
I believe this was an unecessary compilication and it can be
restored later if necesary.
2021-11-12 12:25:28 +01:00
Emery Hemingway
e88c238a74
Schema text parsing
2021-11-11 21:57:04 +01:00
Emery Hemingway
cca512c9df
mapEmbeds for Preserve[void] to Preserve[E]
2021-10-25 21:36:45 +02:00
Emery Hemingway
5250707f0e
Schema: make all Preserves embeddable
2021-10-18 12:12:33 +02:00
Emery Hemingway
99201de724
Schemas: use canonical meta-schema
2021-10-17 13:26:05 +02:00
Emery Hemingway
220577c8a0
New pragmas for toPreserve and fromPreserve
2021-10-17 11:38:45 +02:00
Emery Hemingway
2dd63903f0
Remove records module
...
Redundant with toPreserve and fromPreserve.
2021-09-25 13:57:58 +02:00
Emery Hemingway
42a9b26458
Embeddable Preserves
...
Make Preserve a generic type that can embed a native Nim type.
Generate generic implementations from schemas and discard
embeddedType.
2021-09-25 13:47:05 +02:00
Emery Hemingway
e6d07ba924
Revert Preserve to a concrete type
...
A generic type with an embedded type is too much hassle with the
type system. Add an "embedded" flag on "Preserve" to mark if a
value should be considered as embedded.
2021-09-08 11:16:40 +02:00
Emery Hemingway
9ed18c279c
Release 1.0.0
2021-09-01 13:32:26 +02:00
Emery Hemingway
91bf449f6b
Unlicense
2021-08-31 17:00:00 +02:00
Emery Hemingway
5ca277b8c0
Embedded types
2021-08-31 16:48:55 +02:00
Emery Hemingway
41b1328e4e
Move JSON specifics to preserves/jsonhooks
2021-08-28 11:31:58 +02:00
Emery Hemingway
5aaac95ca1
Remove % operator
...
Use toPreserves, % is not compatible with a parameterized Preserve
type.
2021-08-28 11:25:04 +02:00
Emery Hemingway
d67482fad8
Do not throw from preserveTo or fromPreserve
...
Return an Option or boolean value. This makes it cheap to test if
a Preserves value is convertable to a Nim type.
2021-08-27 22:35:37 +02:00
Emery Hemingway
99b0ddbb13
Textual parser
2021-08-11 13:06:16 +02:00
Emery Hemingway
713f9d00d3
Add `%` operator
...
Reuse the `%` operator from json module for consistency.
2021-07-09 16:56:09 +02:00
Emery Hemingway
be8ad62f99
Infix operator % for constructing records
2021-07-07 12:50:57 +02:00
Emery Hemingway
24d974b91f
Get RecordClass of tuple types
2021-07-01 12:48:07 +02:00
Emery Hemingway
5aa5ccbd09
Move utilities for records to a seperate module
2021-06-28 17:38:41 +02:00
Emery Hemingway
6ebb752690
Store embedded values as pointers
...
Reduce Preserve from a generic to a concrete type.
2021-06-15 18:51:13 +02:00
Emery Hemingway
bfb0825721
Bigint fixes
...
* Native and big integer comparison
* Refuse to serialize negative big ints for now
2021-06-04 11:41:34 +02:00
Emery Hemingway
d63dfad954
Initial commit
2021-06-02 15:51:36 +02:00