Automaton representation. More...
#include </home/buildbot/bb-worker/worker/gnunet_firefly/build/src/service/regex/regex_internal.h>
Data Fields | |
struct REGEX_INTERNAL_Automaton * | prev |
Linked list of NFAs used for partial NFA creation. More... | |
struct REGEX_INTERNAL_Automaton * | next |
Linked list of NFAs used for partial NFA creation. More... | |
struct REGEX_INTERNAL_State * | start |
First state of the automaton. More... | |
struct REGEX_INTERNAL_State * | end |
End state of the partial NFA. More... | |
unsigned int | state_count |
Number of states in the automaton. More... | |
struct REGEX_INTERNAL_State * | states_head |
DLL of states. More... | |
struct REGEX_INTERNAL_State * | states_tail |
DLL of states. More... | |
enum REGEX_INTERNAL_AutomatonType | type |
Type of the automaton. More... | |
char * | regex |
Regex. More... | |
char * | canonical_regex |
Canonical regex (result of RX->NFA->DFA->RX) More... | |
int | is_multistrided |
GNUNET_YES, if multi strides have been added to the Automaton. More... | |
Automaton representation.
Definition at line 259 of file regex_internal.h.
struct REGEX_INTERNAL_Automaton* REGEX_INTERNAL_Automaton::prev |
Linked list of NFAs used for partial NFA creation.
Definition at line 264 of file regex_internal.h.
struct REGEX_INTERNAL_Automaton* REGEX_INTERNAL_Automaton::next |
Linked list of NFAs used for partial NFA creation.
Definition at line 269 of file regex_internal.h.
struct REGEX_INTERNAL_State* REGEX_INTERNAL_Automaton::start |
First state of the automaton.
This is mainly used for constructing an NFA, where each NFA itself consists of one or more NFAs linked together.
Definition at line 275 of file regex_internal.h.
Referenced by automaton_create_proofs(), automaton_fragment_clear(), dfa_compress_paths(), dfa_compress_paths_helper(), dfa_remove_unreachable_states(), evaluate_dfa(), evaluate_nfa(), nfa_add_alternation(), nfa_add_concatenation(), nfa_add_plus_op(), nfa_add_question_op(), nfa_add_star_op(), nfa_fragment_create(), REGEX_INTERNAL_automaton_traverse(), REGEX_INTERNAL_construct_dfa(), REGEX_INTERNAL_dfa_add_multi_strides(), REGEX_INTERNAL_iterate_all_edges(), and REGEX_TEST_automaton_save_graph().
struct REGEX_INTERNAL_State* REGEX_INTERNAL_Automaton::end |
End state of the partial NFA.
This is undefined for DFAs
Definition at line 280 of file regex_internal.h.
Referenced by automaton_fragment_clear(), nfa_add_alternation(), nfa_add_concatenation(), nfa_add_plus_op(), nfa_add_question_op(), nfa_add_star_op(), and nfa_fragment_create().
unsigned int REGEX_INTERNAL_Automaton::state_count |
Number of states in the automaton.
Definition at line 285 of file regex_internal.h.
Referenced by automaton_add_state(), automaton_create_proofs(), automaton_fragment_clear(), automaton_merge_states(), automaton_remove_state(), dfa_merge_nondistinguishable_states(), nfa_add_concatenation(), nfa_add_states(), nfa_fragment_create(), REGEX_INTERNAL_automaton_traverse(), REGEX_INTERNAL_iterate_reachable_edges(), and scc_tarjan().
struct REGEX_INTERNAL_State* REGEX_INTERNAL_Automaton::states_head |
DLL of states.
Definition at line 290 of file regex_internal.h.
Referenced by automaton_add_state(), automaton_fragment_clear(), automaton_merge_states(), automaton_remove_state(), construct_dfa_states(), dfa_compress_paths(), dfa_merge_nondistinguishable_states(), dfa_remove_dead_states(), dfa_remove_unreachable_states(), nfa_add_alternation(), nfa_add_concatenation(), nfa_add_question_op(), nfa_add_star_op(), nfa_add_states(), REGEX_INTERNAL_automaton_destroy(), REGEX_INTERNAL_automaton_traverse(), REGEX_INTERNAL_get_transition_count(), REGEX_INTERNAL_iterate_all_edges(), and scc_tarjan().
struct REGEX_INTERNAL_State* REGEX_INTERNAL_Automaton::states_tail |
DLL of states.
Definition at line 295 of file regex_internal.h.
Referenced by automaton_add_state(), automaton_fragment_clear(), automaton_merge_states(), automaton_remove_state(), nfa_add_alternation(), nfa_add_concatenation(), nfa_add_question_op(), nfa_add_star_op(), nfa_add_states(), and REGEX_INTERNAL_automaton_destroy().
enum REGEX_INTERNAL_AutomatonType REGEX_INTERNAL_Automaton::type |
Type of the automaton.
Definition at line 300 of file regex_internal.h.
Referenced by dfa_minimize(), dfa_remove_dead_states(), evaluate_dfa(), evaluate_nfa(), nfa_fragment_create(), REGEX_INTERNAL_construct_dfa(), and REGEX_INTERNAL_eval().
char* REGEX_INTERNAL_Automaton::regex |
Regex.
Definition at line 305 of file regex_internal.h.
Referenced by main(), REGEX_INTERNAL_automaton_destroy(), REGEX_INTERNAL_construct_dfa(), and REGEX_INTERNAL_construct_nfa().
char* REGEX_INTERNAL_Automaton::canonical_regex |
Canonical regex (result of RX->NFA->DFA->RX)
Definition at line 310 of file regex_internal.h.
Referenced by automaton_create_proofs(), REGEX_INTERNAL_automaton_destroy(), and REGEX_INTERNAL_get_canonical_regex().
int REGEX_INTERNAL_Automaton::is_multistrided |
GNUNET_YES, if multi strides have been added to the Automaton.
Definition at line 315 of file regex_internal.h.
Referenced by REGEX_INTERNAL_construct_nfa(), and REGEX_INTERNAL_dfa_add_multi_strides().