/nmfu

the "no memory for you" "parser" generator

Primary LanguagePythonGNU General Public License v3.0GPL-3.0

nmfu logo banner

nmfu


the "no memory for you" "parser" generator


PyPI - License PyPI PyPI - Python Version Jenkins Jenkins tests Jenkins Coverage Read the Docs

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.

Plugins

There is a vim plugin available which adds syntax highlighting for .nmfu files at mincrmatt12/nmfu-vim, as well as a pygments lexer plugin at mincrmatt12/nmfu-pygments.

License

NMFU is licensed under the GPLv3. Copyright (C) 2020-2023 Matthew Mirvish.