GNUnet 0.21.1
regex_test_lib.h
Go to the documentation of this file.
1/*
2 * This file is part of GNUnet
3 * Copyright (C) 2012 GNUnet e.V.
4 *
5 * GNUnet is free software: you can redistribute it and/or modify it
6 * under the terms of the GNU Affero General Public License as published
7 * by the Free Software Foundation, either version 3 of the License,
8 * or (at your option) any later version.
9 *
10 * GNUnet is distributed in the hope that it will be useful, but
11 * WITHOUT ANY WARRANTY; without even the implied warranty of
12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13 * Affero General Public License for more details.
14 *
15 * You should have received a copy of the GNU Affero General Public License
16 * along with this program. If not, see <http://www.gnu.org/licenses/>.
17
18 SPDX-License-Identifier: AGPL3.0-or-later
19 */
28#ifndef REGEX_INTERNAL_TEST_LIB_H
29#define REGEX_INTERNAL_TEST_LIB_H
30
31#include "regex_internal_lib.h"
32
33#ifdef __cplusplus
34extern "C"
35{
36 #if 0 /* keep Emacsens' auto-indent happy */
37}
38#endif
39#endif
40
41
56char *
57REGEX_TEST_combine (char *const regexes[], unsigned int alphabet_size);
58
59
69char **
71
72
78void
79REGEX_TEST_free_from_file (char **regexes);
80
81
95char *
96REGEX_TEST_generate_random_regex (size_t rx_length, char *matching_str);
97
98
108char *
109REGEX_TEST_generate_random_string (size_t max_len);
110
111
117{
122
128
134
135
144void
146 const char *filename,
148
149
150#if 0 /* keep Emacsens' auto-indent happy */
151{
152 #endif
153 #ifdef __cplusplus
154}
155#endif
156
157/* end of regex_internal_lib.h */
158#endif
struct GNUNET_GETOPT_CommandLineOption options[]
Definition: 002.c:5
static char * filename
library to parse regular expressions into dfa
void REGEX_TEST_free_from_file(char **regexes)
Free all memory reserved for a set of regexes created by read_from_file.
char * REGEX_TEST_generate_random_regex(size_t rx_length, char *matching_str)
Generate a (pseudo) random regular expression of length 'rx_length', as well as a (optional) string t...
REGEX_TEST_GraphSavingOptions
Options for graph creation function REGEX_TEST_automaton_save_graph.
@ REGEX_TEST_GRAPH_COLORING
Enable graph coloring.
@ REGEX_TEST_GRAPH_VERBOSE
The generated graph will include extra information such as the NFA states that were used to generate ...
@ REGEX_TEST_GRAPH_DEFAULT
Default.
char * REGEX_TEST_combine(char *const regexes[], unsigned int alphabet_size)
Combine an array of regexes into a single prefix-shared regex.
char ** REGEX_TEST_read_from_file(const char *filename)
Read a set of regexes from a file, one per line and return them in an array suitable for REGEX_TEST_c...
void REGEX_TEST_automaton_save_graph(struct REGEX_INTERNAL_Automaton *a, const char *filename, enum REGEX_TEST_GraphSavingOptions options)
Save the given automaton as a GraphViz dot file.
char * REGEX_TEST_generate_random_string(size_t max_len)
Generate a random string of maximum length 'max_len' that only contains literals allowed in a regular...
Automaton representation.