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
src .parse takes options (Hash(String,String)) 2019-08-02 17:59:33 +02:00
.gitignore
README.md readme 2019-07-31 20:10:16 +02:00
build.sh
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