rustomaton

Crates.iorustomaton
lib.rsrustomaton
version0.2.1
sourcesrc
created_at2020-07-19 17:47:39.643525
updated_at2020-07-22 21:30:40.089951
descriptionA small Rust library for automaton (DFA, NFA, Regex) manipulation.
homepagehttps://github.com/pgimalac/rustomaton
repositoryhttps://github.com/pgimalac/rustomaton
max_upload_size
id266943
size70,008
Pierre Gimalac (pgimalac)

documentation

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.

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.

Commit count: 28

cargo fmt