schemaparse: fix parsing of atoms to Preserves
This commit is contained in:
parent
9f29722a0d
commit
21052681b6
|
@ -156,16 +156,28 @@ const parser = peg("Schema", p: ParseState):
|
|||
AnyPattern <- "any":
|
||||
pushStack toSymbol"any"
|
||||
|
||||
AtomKindPattern <-
|
||||
"bool" |
|
||||
"float" |
|
||||
"double" |
|
||||
"int" |
|
||||
"string" |
|
||||
"bytes" |
|
||||
"symbol":
|
||||
var n = initRecord(toSymbol"atom", toSymbol(capitalizeAscii $0))
|
||||
pushStack n
|
||||
AtomKindPattern <- Boolean | Float | Double | SignedInteger | String | ByteString | Symbol
|
||||
|
||||
Boolean <- "bool":
|
||||
pushStack initRecord(toSymbol"atom", toSymbol"Boolean")
|
||||
|
||||
Float <- "float":
|
||||
pushStack initRecord(toSymbol"atom", toSymbol"Float")
|
||||
|
||||
Double <- "double":
|
||||
pushStack initRecord(toSymbol"atom", toSymbol"Double")
|
||||
|
||||
SignedInteger <- "int":
|
||||
pushStack initRecord(toSymbol"atom", toSymbol"SignedInteger")
|
||||
|
||||
String <- "string":
|
||||
pushStack initRecord(toSymbol"atom", toSymbol"String")
|
||||
|
||||
ByteString <- "bytes":
|
||||
pushStack initRecord(toSymbol"atom", toSymbol"ByteString")
|
||||
|
||||
Symbol <- "symbol":
|
||||
pushStack initRecord(toSymbol"atom", toSymbol"Symbol")
|
||||
|
||||
EmbeddedPattern <- "#!" * SimplePattern:
|
||||
var n = initRecord(toSymbol"embedded", popStack())
|
||||
|
|
Loading…
Reference in New Issue