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: 9 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 (about 6 years ago)
- Default Branch: master
- Last Pushed: 2024-12-29T02:34:47.000Z (over 1 year ago)
- Last Synced: 2025-06-26T10:51:48.104Z (12 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.