Tony Garnock-Jones
|
c04447d62a
|
Fixes & tweaks wrt Domain/Embedded/Embeddable
|
2021-07-03 09:00:05 +02:00 |
Tony Garnock-Jones
|
c7b252ca9d
|
More TryFrom<&SignedInteger> implementations
|
2021-07-03 08:59:22 +02:00 |
Tony Garnock-Jones
|
6143ddc93d
|
NestedValue new() method for easy wrapping
|
2021-07-03 08:59:03 +02:00 |
Tony Garnock-Jones
|
c70035b044
|
Avoid name clash
|
2021-07-02 16:24:16 +02:00 |
Tony Garnock-Jones
|
297d1d39eb
|
Domain -> Embedded/Embeddable
|
2021-07-02 08:00:37 +02:00 |
Tony Garnock-Jones
|
8b7baec26b
|
PreDomain
|
2021-07-02 07:49:13 +02:00 |
Tony Garnock-Jones
|
23943f8b14
|
ModuleContextMode::TargetIOValue, ModuleContextMode::TargetAny
|
2021-07-02 07:48:52 +02:00 |
Tony Garnock-Jones
|
8cafcbcaf1
|
Bump rust versions for release
|
2021-06-30 16:19:27 +02:00 |
Tony Garnock-Jones
|
70990d2371
|
Better names for literal constants
|
2021-06-30 16:07:49 +02:00 |
Tony Garnock-Jones
|
7c4cf38110
|
snake_case for module names
|
2021-06-30 15:55:42 +02:00 |
Tony Garnock-Jones
|
569563a564
|
Better error handling; use domains correctly
|
2021-06-30 15:50:50 +02:00 |
Tony Garnock-Jones
|
aea230b056
|
Switch back to parsing/unparsing from IOValue
|
2021-06-30 15:18:20 +02:00 |
Tony Garnock-Jones
|
00759673ce
|
Arc at ref boundaries
|
2021-06-30 15:06:28 +02:00 |
Tony Garnock-Jones
|
5b9c4d29f6
|
impl Domain for Arc<D: Domain>
|
2021-06-30 15:05:57 +02:00 |
Tony Garnock-Jones
|
17d8d076ec
|
make test target
|
2021-06-30 15:05:44 +02:00 |
Tony Garnock-Jones
|
e882d5a4df
|
Aftershocks of Float/Double changes
|
2021-06-30 10:14:29 +02:00 |
Tony Garnock-Jones
|
fc8709706c
|
Cleanups; make as_float etc return Float, add as_f32 etc
|
2021-06-30 10:10:38 +02:00 |
Tony Garnock-Jones
|
3156180601
|
IOValue -> _Any = ArcValue<_Ptr>
|
2021-06-30 09:53:32 +02:00 |
Tony Garnock-Jones
|
f1d403a6a7
|
Fallible from_preserves
|
2021-06-30 09:52:16 +02:00 |
Tony Garnock-Jones
|
d69787e5ee
|
Module aliases and embedded pointer types
|
2021-06-29 23:19:22 +02:00 |
Tony Garnock-Jones
|
c3bc678a46
|
Better compiler API
|
2021-06-29 22:32:35 +02:00 |
Tony Garnock-Jones
|
dd9e190bed
|
More metadata
|
2021-06-29 20:31:28 +02:00 |
Tony Garnock-Jones
|
01e8e2c279
|
Include both a path and a version
|
2021-06-29 20:30:21 +02:00 |
Tony Garnock-Jones
|
e4392ea2d5
|
Bump rust preserves version
|
2021-06-29 20:27:11 +02:00 |
Tony Garnock-Jones
|
aa1c983acc
|
Unparsers
|
2021-06-29 16:54:29 +02:00 |
Tony Garnock-Jones
|
5c2d12971d
|
Better idioms
|
2021-06-28 22:38:30 +02:00 |
Tony Garnock-Jones
|
9c4be54be1
|
Bootstrap Rust preserves-schema
|
2021-06-28 22:25:41 +02:00 |
Tony Garnock-Jones
|
7546ba29ad
|
Avoid quite a bit of boxing
|
2021-06-28 17:26:41 +02:00 |
Tony Garnock-Jones
|
c7dbbdc178
|
Small fixes
|
2021-06-28 17:08:44 +02:00 |
Tony Garnock-Jones
|
4144a90b9d
|
Initial commit (several days' worth)
|
2021-06-28 16:35:45 +02:00 |
Tony Garnock-Jones
|
60d1be41a3
|
Rename NamedSimplePattern_ -> Binding
|
2021-06-25 10:25:26 +02:00 |
Tony Garnock-Jones
|
fdb43f6292
|
Constrain names/identifiers in schemas to be lowest-common-denominator.
|
2021-06-25 09:45:07 +02:00 |
Tony Garnock-Jones
|
da513a249e
|
Allow void to be `->preserve`able
|
2021-06-17 15:26:43 +02:00 |
Tony Garnock-Jones
|
f808e37e89
|
Fix very stupid mistake in order.rkt
|
2021-06-16 21:36:09 +02:00 |
Tony Garnock-Jones
|
f12343e723
|
Add missing *->preserve coercions during unparsing
|
2021-06-10 10:01:04 +02:00 |
Tony Garnock-Jones
|
0d4d1e738c
|
Coerce integers to floats/doubles during unparse
|
2021-06-09 20:02:06 +02:00 |
Tony Garnock-Jones
|
feb6361029
|
I forgot embedded!
|
2021-06-08 16:15:53 +02:00 |
Tony Garnock-Jones
|
27002dfe7f
|
Always use wrapper struct
|
2021-06-08 15:50:29 +02:00 |
Tony Garnock-Jones
|
e5b6c46169
|
Time reader self-test
|
2021-06-08 15:34:33 +02:00 |
Tony Garnock-Jones
|
6cecf64df5
|
Move toward being user-facing rather than plugin-facing
|
2021-06-08 15:34:25 +02:00 |
Tony Garnock-Jones
|
7acf7c5b40
|
Generic-method based unparsing; prelude to generic pattern-formation
|
2021-06-08 15:26:32 +02:00 |
Tony Garnock-Jones
|
0bcb4e64ec
|
Add struct ty-field for better structure in ty-records
|
2021-06-08 09:56:04 +02:00 |
Tony Garnock-Jones
|
30bcc1a50b
|
Fix embedded (un)parsing to rely on the reader
|
2021-06-08 09:27:03 +02:00 |
Tony Garnock-Jones
|
a4d61017d8
|
Repair error wrt `float` struct test
|
2021-06-08 09:26:35 +02:00 |
Tony Garnock-Jones
|
ade9b0a0f1
|
map-embeddeds
|
2021-06-08 09:26:10 +02:00 |
Tony Garnock-Jones
|
f93d329f48
|
Small optimization
|
2021-06-08 09:25:52 +02:00 |
Tony Garnock-Jones
|
c05180c492
|
Some tool docs; improve help message of preserves-tool
|
2021-06-04 17:47:16 +02:00 |
Tony Garnock-Jones
|
139f4ff08b
|
Accept parameters in #lang preserves-schema lines
|
2021-06-03 23:23:22 +02:00 |
Tony Garnock-Jones
|
53bd5a1a7e
|
Escape schema names with ? instead of $
|
2021-06-02 12:35:56 +02:00 |
Tony Garnock-Jones
|
b968f77ff6
|
Provide fold-Schema-definitions and map-Schema-definitions
|
2021-06-02 12:35:33 +02:00 |
Tony Garnock-Jones
|
bd68786f1c
|
Schema compiler plugins
|
2021-06-02 06:56:44 +02:00 |
Tony Garnock-Jones
|
64696ac184
|
Publish
- @preserves/core@0.17.0
- @preserves/schema@0.16.0
|
2021-06-01 16:54:23 +02:00 |
Tony Garnock-Jones
|
7683a64a5b
|
Repair Racket schema reader
|
2021-06-01 16:53:21 +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
|
9014a0ffb8
|
Publish
- @preserves/schema@0.15.0
|
2021-06-01 16:10:51 +02:00 |
Tony Garnock-Jones
|
8d96743d53
|
Redo schema embedded value patterns to use embedded syntax and an interface schema
|
2021-06-01 16:10:04 +02:00 |
Tony Garnock-Jones
|
b23acdaf5a
|
Default to text output from preserves-tool
|
2021-06-01 15:37:45 +02:00 |
Tony Garnock-Jones
|
947b816a57
|
Improve error-handling in Racket schema reader
|
2021-05-28 20:06:46 +02:00 |
Tony Garnock-Jones
|
b69c3a0894
|
Avoid name clashes with :parse-embedded and :embedded->preserves
|
2021-05-28 10:33:28 +02:00 |
Tony Garnock-Jones
|
d7bf235813
|
Avoid use of void so much
|
2021-05-27 09:54:11 +02:00 |
Tony Garnock-Jones
|
ab12c6535f
|
Simpler embedded parsing/unparsing
|
2021-05-27 09:53:55 +02:00 |
Tony Garnock-Jones
|
534018e3a4
|
batch-compile
|
2021-05-27 09:52:58 +02:00 |
Tony Garnock-Jones
|
264c4b9d2e
|
Repair integer parsing
|
2021-05-27 00:28:42 +02:00 |
Tony Garnock-Jones
|
87e816306d
|
Better import failure error reporting
|
2021-05-26 23:27:55 +02:00 |
Tony Garnock-Jones
|
5470497aa2
|
Update gen/schema.rkt
|
2021-05-26 23:16:49 +02:00 |
Tony Garnock-Jones
|
f90544d807
|
Code generator tool; handle module references and embeddeds
|
2021-05-26 23:15:49 +02:00 |
Tony Garnock-Jones
|
cb88c587b6
|
Include a copy of samples.pr so that tests run OK on the buildserver
|
2021-05-26 21:11:45 +02:00 |
Tony Garnock-Jones
|
e6efd03be7
|
Introduce explicit embedded wrapper
|
2021-05-26 21:09:06 +02:00 |
Tony Garnock-Jones
|
90ce0a544d
|
The Racket preserves package needs a local copy of schema.prs for the package-builder to work. Use a git hook to keep it in sync with the master copy
|
2021-05-26 14:27:03 +02:00 |
Tony Garnock-Jones
|
7ab12108e4
|
Inline reader module; add port->preserves
|
2021-05-26 13:56:37 +02:00 |
Tony Garnock-Jones
|
e4f7219dc6
|
Publish
- @preserves/schema@0.14.1
|
2021-05-25 20:15:18 +02:00 |
Tony Garnock-Jones
|
98e2511fe1
|
#lang preserves-schema
|
2021-05-25 20:14:10 +02:00 |
Tony Garnock-Jones
|
460529e1c7
|
Clean up language wrt invertibility/"bijection"
|
2021-05-25 20:13:02 +02:00 |
Tony Garnock-Jones
|
52bc77c9d7
|
Publish
- @preserves/schema@0.14.0
|
2021-05-25 11:08:27 +02:00 |
Tony Garnock-Jones
|
49efc76580
|
Racket Preserves Schema reader implementation
|
2021-05-25 11:07:37 +02:00 |
Tony Garnock-Jones
|
a24a5b19f5
|
Regenerate metaschema
|
2021-05-25 11:06:40 +02:00 |
Tony Garnock-Jones
|
eeb84ad669
|
Sort emitted entries; add throwing parser variant
|
2021-05-25 11:06:30 +02:00 |
Tony Garnock-Jones
|
6c9071fd88
|
Optionally omit commas when writing preserves
|
2021-05-25 11:05:16 +02:00 |
Tony Garnock-Jones
|
8b2aa0fb87
|
preserve=?
|
2021-05-25 11:05:03 +02:00 |
Tony Garnock-Jones
|
5c644624c4
|
detect-preserve-syntax, file->preserves
|
2021-05-25 11:04:51 +02:00 |
Tony Garnock-Jones
|
163e338ce5
|
Name is already always supplied, no need to add it
|
2021-05-25 11:04:29 +02:00 |
Tony Garnock-Jones
|
4ed8fd2c92
|
Add "annotations" procedure
|
2021-05-25 11:02:36 +02:00 |
Tony Garnock-Jones
|
669d1b480d
|
Name is already always supplied, no need to add it
|
2021-05-25 11:01:55 +02:00 |
Tony Garnock-Jones
|
7d06c7dce0
|
Repair dict "named" generation
|
2021-05-25 10:49:35 +02:00 |
Tony Garnock-Jones
|
bdd699ae9f
|
Deterministic hash ordering for Racket CompoundPattern-dict
|
2021-05-24 17:46:50 +02:00 |
Tony Garnock-Jones
|
33a80533fa
|
Checker for Racket
|
2021-05-24 12:47:44 +02:00 |
Tony Garnock-Jones
|
1ca796e6aa
|
Publish
- @preserves/schema@0.13.0
|
2021-05-24 12:05:44 +02:00 |
Tony Garnock-Jones
|
4914c8cd68
|
Move type/gentype back into compiler where it belongs
|
2021-05-24 12:05:02 +02:00 |
Tony Garnock-Jones
|
46d76dfca7
|
Redo bijection checking without using gentype
|
2021-05-24 12:03:04 +02:00 |
Tony Garnock-Jones
|
0db223ede8
|
More tests, and variant label duplicate check
|
2021-05-24 11:53:25 +02:00 |
Tony Garnock-Jones
|
52be118dc7
|
A few more tests
|
2021-05-24 11:32:29 +02:00 |
Tony Garnock-Jones
|
a1fdddcf7b
|
Simple tests; more exports
|
2021-05-24 11:27:46 +02:00 |
Tony Garnock-Jones
|
e594d22d09
|
Publish
- @preserves/core@0.16.0
- @preserves/schema@0.12.0
|
2021-05-24 10:40:50 +02:00 |
Tony Garnock-Jones
|
aaee62044c
|
Lerna for convenient package collection scripting
|
2021-05-24 10:39:23 +02:00 |
Tony Garnock-Jones
|
9bdfc4c3ab
|
Split compute from report
|
2021-05-24 10:16:00 +02:00 |
Tony Garnock-Jones
|
c4bfc0eefc
|
Follow improvements through Racket schema impl
|
2021-05-24 10:10:13 +02:00 |
Tony Garnock-Jones
|
2559a4713f
|
Much improved refactoring/repair of metaschema
|
2021-05-24 00:15:31 +02:00 |
Tony Garnock-Jones
|
1d6956fa55
|
Move gen-schema.rkt to gen/schema.rkt
|
2021-05-22 15:52:12 +02:00 |
Tony Garnock-Jones
|
9e6743abdc
|
Autogenerate predicate for unions
|
2021-05-22 15:50:54 +02:00 |
Tony Garnock-Jones
|
43b776eb7f
|
Switch to manipulating parsed form of metaschema
|
2021-05-22 15:47:13 +02:00 |
Tony Garnock-Jones
|
ebab3fafc5
|
gen-schema.rkt (initial rendering)
|
2021-05-22 15:43:29 +02:00 |
Tony Garnock-Jones
|
49cba14b4f
|
Initial work on preserves-schema for Racket
|
2021-05-21 21:44:05 +02:00 |
Tony Garnock-Jones
|
1654ad4c80
|
Repair error reporting
|
2021-05-21 17:33:29 +02:00 |
Tony Garnock-Jones
|
2ddedc7673
|
v0.11.2
|
2021-05-21 17:28:48 +02:00 |
Tony Garnock-Jones
|
dbd6c3cf53
|
Repair checker
|
2021-05-21 17:28:18 +02:00 |
Tony Garnock-Jones
|
2bde06f509
|
Add omitted checkBinding call
|
2021-05-21 16:14:58 +02:00 |
Tony Garnock-Jones
|
0f1ea4aa20
|
Further simplification
|
2021-05-21 16:01:04 +02:00 |
Tony Garnock-Jones
|
46ab6d90ec
|
v0.11.1
|
2021-05-21 15:56:21 +02:00 |
Tony Garnock-Jones
|
b5b4effeac
|
Simplify unconverter generation even further
|
2021-05-21 15:56:01 +02:00 |
Tony Garnock-Jones
|
20b676df27
|
Move insufficient-information checking to read-time
|
2021-05-21 15:49:06 +02:00 |
Tony Garnock-Jones
|
ecdb314366
|
Require at least two branches in "&" and "/"
|
2021-05-21 11:20:25 +02:00 |
Tony Garnock-Jones
|
7253d1507e
|
v0.9.0
|
2021-05-20 22:36:07 +02:00 |
Tony Garnock-Jones
|
10380e451a
|
Simplify schemas by allowing at most one of "&" or "/" in a definition
|
2021-05-20 22:34:20 +02:00 |
Tony Garnock-Jones
|
436b14e2fe
|
v0.8.1
|
2021-05-17 15:13:08 +02:00 |
Tony Garnock-Jones
|
cefc029f70
|
Repair egregious error in schema compiler
|
2021-05-17 15:12:39 +02:00 |
Tony Garnock-Jones
|
e4a2503899
|
The Great Renaming: Pointer -> Embedded
|
2021-05-17 14:54:06 +02:00 |
Tony Garnock-Jones
|
6fc41ead6f
|
v0.7.0
|
2021-04-25 10:44:36 +02:00 |
Tony Garnock-Jones
|
8e068fbdbf
|
v0.14.0
|
2021-04-25 10:43:52 +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
|
854a2bc41c
|
v0.6.0
|
2021-04-25 00:17:57 +02:00 |
Tony Garnock-Jones
|
638f8e026e
|
v0.13.0
|
2021-04-25 00:16:38 +02:00 |
Tony Garnock-Jones
|
2d0e6255bd
|
Embed pointer values into Values
|
2021-04-25 00:09:33 +02:00 |
Tony Garnock-Jones
|
58d2bf6f3a
|
Make undeclared pointer type `any` instead of `never`, and take advantage of new explicit pointer wrappers
|
2021-04-24 23:49:37 +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
|
aef970dc2d
|
v0.5.1
|
2021-04-22 20:55:48 +02:00 |
Tony Garnock-Jones
|
8895d2b6a4
|
Fix rollup
|
2021-04-22 20:55:26 +02:00 |
Tony Garnock-Jones
|
be6537f6d4
|
v0.5.0
|
2021-04-22 20:54:51 +02:00 |
Tony Garnock-Jones
|
c54a17162d
|
Bump dep
|
2021-04-22 20:54:28 +02:00 |
Tony Garnock-Jones
|
63cf5d1cf2
|
v0.12.0
|
2021-04-22 20:53:12 +02:00 |
Tony Garnock-Jones
|
9f9514a7e6
|
Handle pointer type nesting properly
|
2021-04-22 20:51:48 +02:00 |
Tony Garnock-Jones
|
825d208198
|
Introduce Cargo workspace in prep for schema
|
2021-04-19 22:28:59 +02:00 |
Tony Garnock-Jones
|
b4d7af4322
|
v0.4.0
|
2021-04-01 22:02:46 +02:00 |
Tony Garnock-Jones
|
e763174846
|
Bump
|
2021-04-01 22:02:27 +02:00 |
Tony Garnock-Jones
|
e1e7904a87
|
v0.11.0
|
2021-04-01 22:02:08 +02:00 |
Tony Garnock-Jones
|
545e1bb6de
|
Switch from yargs to commander
|
2021-04-01 21:57:49 +02:00 |
Tony Garnock-Jones
|
3ad56a5275
|
Enhance preserves-schemac to emit bundles
|
2021-04-01 21:12:11 +02:00 |
Tony Garnock-Jones
|
55fab35073
|
Schema Bundles
|
2021-04-01 20:31:08 +02:00 |
Tony Garnock-Jones
|
121bcc7a53
|
Refactor schema schema
|
2021-03-23 19:40:06 +01:00 |
Tony Garnock-Jones
|
94f6959ac8
|
Named instead of positional ctor args
|
2021-03-23 16:59:44 +01:00 |
Tony Garnock-Jones
|
d64bb82c22
|
Fix preserves-schemac
|
2021-03-23 16:37:35 +01:00 |
Tony Garnock-Jones
|
c23cbcc60c
|
Fix error reporting; handle unit like record
|
2021-03-23 12:16:16 +01:00 |
Tony Garnock-Jones
|
e187fb83b4
|
Regenerate to avoid warnings
|
2021-03-23 12:09:16 +01:00 |
Tony Garnock-Jones
|
4434f712b6
|
Fix fromPtr; avoid warnings
|
2021-03-23 12:08:58 +01:00 |
Tony Garnock-Jones
|
d91924c72b
|
Regenerate
|
2021-03-23 11:37:22 +01:00 |
Tony Garnock-Jones
|
7d8453a806
|
Unconverter
|
2021-03-23 11:36:55 +01:00 |
Tony Garnock-Jones
|
1d73289345
|
First attempt at a merge() utility
|
2021-03-23 11:36:11 +01:00 |
Tony Garnock-Jones
|
4ded3a484c
|
Excise old decoder
|
2021-03-22 14:43:40 +01:00 |
Tony Garnock-Jones
|
87dda48083
|
Use $ instead of _ in tokens
|
2021-03-22 12:29:27 +01:00 |
Tony Garnock-Jones
|
4814790d8e
|
Cut over to new representation
|
2021-03-22 12:13:34 +01:00 |