aboutsummaryrefslogtreecommitdiffstats
path: root/modelica-parser-lalrpop/README.md
blob: cf293ad247c709309392f1d74aaa9ffcbd7d1344 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
modelica-parser-lalrpop
============================

This is a pure-Rust library for parsing a subset of the Modelica modeling
language, built with the lalrpop parsing library.

The current implementation was not written to be complete or closely follow the
lexing/parsing definitions from the formal Modelica standard. Instead it has
been cobbled together piecemeal with the goal of parsing a reasonable fraction
of real-world existing models. Given this, the parser is incorrect in a number
of corner cases, and it probably does not make sense to correct those
one-by-one.

Contributions or a re-write to be more correct or more complete are welcome!

To try parsing a set of example files:

    cargo run --example parse_file examples/modelica_models/*.mo

Things that are completely un-implemented include:

- functions/algorithms
- discrete time
- (more)