diff options
Diffstat (limited to 'libautomata_destroy_automaton.c')
| -rw-r--r-- | libautomata_destroy_automaton.c | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/libautomata_destroy_automaton.c b/libautomata_destroy_automaton.c new file mode 100644 index 0000000..ef27bc1 --- /dev/null +++ b/libautomata_destroy_automaton.c @@ -0,0 +1,17 @@ +/* See LICENSE file for copyright and license details. */ +#include "common.h" + + +void +libautomata_destroy_automaton(struct libautomata_automaton *automaton) +{ + size_t i; + if (automaton->nodes) + for (i = 0; i < automaton->nnodes; i++) + if (automaton->nodes[i] && automaton->nodes[i].destory) + (*automaton->nodes[i].destory)(&automaton->nodes[i]); + automaton->start = NULL; + automaton->current = NULL; + automaton->nodes = NULL; + automaton->nnodes = 0; +} |
