https://github.com/mincrmatt12/nmfu
the "no memory for you" "parser" generator
https://github.com/mincrmatt12/nmfu
c dfa parser parser-generator python3 state-machine
Last synced: about 2 months ago
JSON representation
the "no memory for you" "parser" generator
- Host: GitHub
- URL: https://github.com/mincrmatt12/nmfu
- Owner: mincrmatt12
- License: gpl-3.0
- Created: 2020-06-10T00:40:52.000Z (almost 5 years ago)
- Default Branch: master
- Last Pushed: 2024-12-29T02:34:47.000Z (5 months ago)
- Last Synced: 2025-03-24T07:56:53.025Z (2 months ago)
- Topics: c, dfa, parser, parser-generator, python3, state-machine
- Language: Python
- Homepage:
- Size: 1.44 MB
- Stars: 3
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# nmfu
---
_the "no memory for you" "parser" generator_---
 [](https://pypi.org/project/nmfu)  [](https://jenkins.mm12.xyz/job/nmfu) [](https://jenkins.mm12.xyz/jenkins/job/nmfu/job/master/lastCompletedBuild/testReport/) [](https://jenkins.mm12.xyz/jenkins/job/nmfu/job/master/lastCompletedBuild/coverage/) [](https://nmfu.rtfd.io)
`nmfu` attempts to turn a parser specified as a procedural matching thing into a state machine, parsing protocols with minimal memory and in arbitrarily sized chunks.
There are a number of examples present in the `examples/` folder, as well as documentation and a tutorial available on [readthedocs](https://nmfu.rtfd.io).
## Plugins
There is a vim plugin available which adds syntax highlighting for `.nmfu` files at [mincrmatt12/nmfu-vim](https://github.com/mincrmatt12/nmfu-vim), as well
as a pygments lexer plugin at [mincrmatt12/nmfu-pygments](https://github.com/mincrmatt12/nmfu-pygments).## License
NMFU is licensed under the GPLv3.
Copyright (C) 2020-2023 Matthew Mirvish.