Caustic's parsing framework
Project description
Caustic's Parser -- uses grammar specification to compile Caustic source code into a CST (Caustic AST)
Uses ParGlare for parsing, meant to work with CausticGrammar to create a CST (Caustic AST)
CLI usage
See cap --help
Example module usage
import sys
import parglare
from pathlib import Path
from caustic.parser import CausticParser
from caustic.parser.error import format_exc
# CausticParser.from_file() loads the grammar using ParGlare,
# then invokes CausticParser.from_grammar(), which creates a ParGlare
# parser instance and uses that to finally create the parser
p = CausticParser.from_file(Path('<your-grammar-file>'))
try:
print(p.parse(input()))
except parglare.ParseError as e:
# custom error formatting (optional)
print(format_exc(e), file=sys.stderr)
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
caustic.parser-2.0.0.tar.gz
(8.9 kB
view hashes)
Built Distribution
Close
Hashes for caustic.parser-2.0.0-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | edf1ac149a5b23f8c4a8abee94aa5e7a9e1b35c1a810ba17092a030e2c6e1671 |
|
MD5 | e21ae376df17542224cf06b9e791d9cf |
|
BLAKE2b-256 | 794d61eef51006572edd4eb8353273bf703d5f3469d5ca83f964db8dfc577c41 |