3
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 or pull requests.
Go to file
2019-08-13 18:03:34 +02:00
samples Adding sections. 2019-08-08 10:32:09 +02:00
src renaming: Specs => SpecFileParser 2019-08-13 18:03:34 +02:00
.gitignore initial commit: test grammars + tooling 2019-07-24 05:26:14 +02:00
build.sh spec format parser v0.1 2019-07-31 19:38:40 +02:00
debug.cr renaming: Specs => SpecFileParser 2019-08-13 18:03:34 +02:00
README.md readme 2019-07-31 20:10:16 +02:00
shard.yml renaming: Specs => SpecFileParser 2019-08-13 18:03:34 +02:00

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