Compare commits
3 Commits
f65e206864
...
92c6eb16bb
Author | SHA1 | Date |
---|---|---|
|
92c6eb16bb | |
|
921acb6b21 | |
|
ea6c8118e8 |
|
@ -1,6 +1,6 @@
|
|||
# Package
|
||||
# auto-update-version
|
||||
|
||||
version = "20240506"
|
||||
version = "20240522"
|
||||
author = "Emery Hemingway"
|
||||
description = "data model and serialization format"
|
||||
license = "Unlicense"
|
||||
|
|
|
@ -254,7 +254,7 @@ const parser = peg("Schema", p: ParseState):
|
|||
var node = initRecord(toSymbol"tuplePrefix", toPreserves fields, tail)
|
||||
pushStack node
|
||||
|
||||
DictionaryPattern <- '{' * *(S * >Value * S * ':' * S * NamedSimplePattern * ?',') * S * '}':
|
||||
DictionaryPattern <- '{' * S * *(*LineComment * >Value * S * ':' * S * NamedSimplePattern * ?',' * S) * '}':
|
||||
var dict = initDictionary()
|
||||
for i in countDown(pred capture.len, 1):
|
||||
let key = toSymbol capture[i].s
|
||||
|
@ -263,12 +263,12 @@ const parser = peg("Schema", p: ParseState):
|
|||
pushStack n
|
||||
|
||||
NamedPattern <- ((atId * ?Annotation * SimplePattern) | Pattern):
|
||||
if capture.len == 2:
|
||||
if capture.len > 1:
|
||||
var n = initRecord(toSymbol"named", toSymbol $1, popStack())
|
||||
pushStack n
|
||||
|
||||
NamedSimplePattern <- ((atId * ?Annotation * SimplePattern) | SimplePattern):
|
||||
if capture.len == 2:
|
||||
if capture.len > 1:
|
||||
var n = initRecord(toSymbol"named", toSymbol $1, popStack())
|
||||
pushStack n
|
||||
|
||||
|
@ -287,7 +287,7 @@ const parser = peg("Schema", p: ParseState):
|
|||
Value <- Preserves.Value:
|
||||
discard
|
||||
|
||||
Annotation <- '@' * (Preserves.String | Preserves.Record) * S
|
||||
Annotation <- '@' * ('"' * *Preserves.char * '"' | Preserves.Record) * S
|
||||
|
||||
S <- *{ ' ', '\t', '\r', '\n' }
|
||||
|
||||
|
|
Loading…
Reference in New Issue