jia-parse
jia-parse is a command-line parser for planning and modelling files used by Jia.
It currently parses:
- PDDL domain and problem files
.jia/.jiacpmodel files
The crate also exposes a Rust library API for embedding the parsers in other tools.
Run
Parse PDDL:
Print PDDL parse statistics:
Emit PDDL AST JSON:
The JSON output is a single object:
Parse a .jia model:
Emit .jia AST JSON:
Validate only:
Examples
Inspectable examples live under examples/:
examples/pddl/delivery/- a compact typed PDDL domain and problemexamples/pddl/advanced/- durative actions, numeric fluents, derived predicates, preferences, and constraintsexamples/jia/job_shop.jia- CP scheduling modelexamples/jia/resource_schedule.jia- CP scheduling model with optional tasks, real bounds, and resource demandexamples/jia/production_lp.jia- LP-style.jiamodel
Compile
Install from GitHub:
After the crate is published to crates.io:
Build from source:
The binary will be written to:
Run tests:
Install locally from a checkout:
Library
Use the parser from Rust:
let domain = parse_domain_str?;
let problem = parse_problem_str?;
let model = parse_model_str?;
License
Apache-2.0. See LICENSE.