aboutsummaryrefslogtreecommitdiffstats
path: root/libautomata_reset_automaton.c
diff options
context:
space:
mode:
Diffstat (limited to 'libautomata_reset_automaton.c')
-rw-r--r--libautomata_reset_automaton.c10
1 files changed, 9 insertions, 1 deletions
diff --git a/libautomata_reset_automaton.c b/libautomata_reset_automaton.c
index 24cf924..5826512 100644
--- a/libautomata_reset_automaton.c
+++ b/libautomata_reset_automaton.c
@@ -2,4 +2,12 @@
#include "common.h"
-extern inline void libautomata_execute_automaton(struct libautomata_automaton *, const void *, void **, size_t *);
+void
+libautomata_reset_automaton(struct libautomata_automaton *automaton)
+{
+ size_t i;
+ for (i = 0u; i < automaton->nnodes; i++)
+ automaton->nodes[i].reset(&automaton->nodes[i]);
+ automaton->current = automaton->start;
+ automaton->state = LIBAUTOMATA_AUTOMATON_RUNNING;
+}