# ecore.rs
A parser and internal representation for the [Ecore format][ecore] used by the Eclipse Modeling
Framework (EMF).
## TODO
- [ ] investigate type parameters for classes
- [ ] investigate type parameters for operations
- [ ] builtin type constructors (`Vec`, `Option`, ...)?
## Input (XML) format
A few examples are available in the [rsc](./rsc) folder, both XML and JPG.
We currently support the following abstract layout
```ebnf
file =
xml_version (package)*
package =
""
(annotation | package | classifier)*
""
# a class (concrete/abstract/enum/...)
classifier =
""
(annotation | operation | structural_feature)
"
annotation =
""
( "" )*
" "
# a method
operation =
""
(
""
)*
""
structural_feature =
""
```
[ecore]: https://download.eclipse.org/modeling/emf/emf/javadoc/2.9.0/org/eclipse/emf/ecore/package-summary.html#details