Limi
|
Prints automata in timbuk format. More...
#include <timbuk_printer.h>
Public Member Functions | |
void | print_timbuk (const automaton< State, Symbol, Implementation > &automaton, std::ostream &out, const printer_base< Symbol > &symbol_printer, const std::string &name="A") |
Prints the automaton. More... | |
void | print_timbuk (const automaton< State, Symbol, Implementation > &automaton, const std::string &filename, const printer_base< Symbol > &symbol_printer, const std::string &name="A") |
Prints automata in timbuk format.
If there is independence relation is empty (returns false for all queries) the resulting automaton will be compatible with other language inclusion tools that can read timbuk files.
Printing an automaton -> parsing it again with the timbuk parser -> and printing it again will not yield a valid automaton. This is a known behaviour because the init symbols would appear twice.
State | The class of states. |
Symbol | The class of symbols. |
Implementation | The automata implementation class. |
|
inline |
Prints the automaton.
The states of the automaton will simply be numbered as they are encountered. The symbols need to be printed in a predictable way because if a pair of automata is fed to another language inclusion tool the symbol set needs to be identical.
automaton | The automaton to print |
out | The stream to print to |
symbol_printer | The printer for symbols. This may be different from the normal symbol_printer and must only produce the symbols [a-zA-Z0-9]. |
name | The name for the automaton. |
|
inline |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.