https://github.com/pgimalac/rustomaton
A Rust automaton & regexp library project
https://github.com/pgimalac/rustomaton
Last synced: 8 months ago
JSON representation
A Rust automaton & regexp library project
- Host: GitHub
- URL: https://github.com/pgimalac/rustomaton
- Owner: pgimalac
- License: mit
- Created: 2019-07-10T21:27:45.000Z (almost 7 years ago)
- Default Branch: master
- Last Pushed: 2022-09-10T20:11:38.000Z (almost 4 years ago)
- Last Synced: 2025-01-15T08:20:58.426Z (over 1 year ago)
- Language: Rust
- Homepage:
- Size: 132 KB
- Stars: 7
- Watchers: 2
- Forks: 3
- Open Issues: 7
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# A Rust automaton manipulation library project.
## Functionalities
The library allows to build automatons (DFA and NFA) and regexes.
It also provides lots of classic algorithms over theses structures and allows to convert from one to another.
## Algorithms implemented
- union of two automatons
- intersection of two automatons
- equality of two automatons
- concatenation of two automatons
- complementary of an automaton
- minimisation of an automaton
- Kleene closure of an automaton
- determinization of an automaton
- completed automaton
- accessible automaton
- co-accessible automaton
- trimmed automaton
- reversed automaton
## Displayal
Regexes can be displayed as Strings but the "simplify" function is not incredible so it generates stupidly long regexes.
Automatons can be exported to [.dot files](https://en.wikipedia.org/wiki/DOT_(graph_description_language)).
## Bugs
This library hasn't been tested intensively so I wouldn't recommend using it for something too serious.
If you notice a bug or anything weird don't hesitate to open an issue or a pull request on [the Github page](https://github.com/pgimalac/rustomaton).