https://github.com/Strumenta/FormatsDSL
A DSL to describe formats and generate loaders
https://github.com/Strumenta/FormatsDSL
dsl jetbrains-mps mps
Last synced: 5 months ago
JSON representation
A DSL to describe formats and generate loaders
- Host: GitHub
- URL: https://github.com/Strumenta/FormatsDSL
- Owner: Strumenta
- License: apache-2.0
- Created: 2018-01-24T15:16:43.000Z (over 7 years ago)
- Default Branch: master
- Last Pushed: 2023-09-29T14:55:57.000Z (about 2 years ago)
- Last Synced: 2024-11-18T05:38:25.257Z (11 months ago)
- Topics: dsl, jetbrains-mps, mps
- Size: 1.87 MB
- Stars: 10
- Watchers: 4
- Forks: 0
- Open Issues: 17
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
- mps.rocks - FormatsDSL - A DSL to describe formats and generate loaders. ([Built with MPS](#built-with-mps) / Languages)
README
[](https://opensource.org/licenses/Apache-2.0) [](https://travis-ci.org/Strumenta/FormatsDSL)
# FormatsDSL
A DSL to describe formats and generate loaders
## Define binary formats
This project includes a DSL to define binary formats. For example, this is how we can define the JVM classfile format

It supportes polymorphic structure. These structures have a different format depending on the value of a tag field

## Defining tests
You can also test your format against a specific file, to ensure it is loaded correctly
