3
0
Fork 0
This is a prequel to `package.mk`. Conserved for historical reasons and as a Crystal code example.
This repository has been archived on 2022-01-17. You can view files and clone it, but cannot push or open issues/pull-requests.
 
 
Go to file
Philippe PITTOLI 97b04c2595 .parse takes options (Hash(String,String)) 2019-08-02 17:59:33 +02:00
grammar Adding the '^' character. 2019-08-02 00:55:16 +02:00
samples spec format parser v0.1 2019-07-31 19:38:40 +02:00
src .parse takes options (Hash(String,String)) 2019-08-02 17:59:33 +02:00
.gitignore initial commit: test grammars + tooling 2019-07-24 05:26:14 +02:00
README.md readme 2019-07-31 20:10:16 +02:00
build.sh spec format parser v0.1 2019-07-31 19:38:40 +02:00
shard.yml Better assignments: class separation for sections, simple assignments, etc. 2019-08-01 20:21:21 +02:00
test-specs.cr .parse takes options (Hash(String,String)) 2019-08-02 17:59:33 +02:00

README.md

recipes parser

Parsing grammars requires the pegasus software: https://github.com/DanilaFe/pegasus

toying with spec library

The parser is composed of two main files:

  • parser.cr, lexer + grammar
  • spec.cr, high-level parser to include in softwares

toying with new grammar

After downloading the pegasus̀ software.

# simple example for debug & chill
watch -d ./build.sh test-grammars/simpletokens 2>/dev/null | grep -vE "(Token|^[)])"
../pegasus/bin/pegasus-crystal < test-grammars/simpletokens.json