#include "gnunet_regex_lib.h"
void
-key_iterator (void *cls, const GNUNET_HashCode * key, const char *proof,
+key_iterator (void *cls, const struct GNUNET_HashCode *key, const char *proof,
int accepting, unsigned int num_edges,
const struct GNUNET_REGEX_Edge *edges)
{
int i;
- GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, "Iterating...\n");
+ GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, "Iterating... (accepting: %i)\n",
+ accepting);
for (i = 0; i < num_edges; i++)
{
GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, "Edge %i: %s\n", i, edges[i].label);
}
+
+ if (NULL != proof)
+ GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, "Proof: %s\n", proof);
}
int
struct GNUNET_REGEX_Automaton *dfa;
error = 0;
- regex = "ab?(abcd)?";
+ /* regex = "ab(c|d)+c*(a(b|c)+d)+(bla)+"; */
+ /* regex = "(bla)*"; */
+ /*regex = "b(lab)*la"; */
+ /* regex = "(ab)*"; */
+ regex = "ab(c|d)+c*(a(b|c)+d)+(bla)(bla)*";
+ /*regex = "z(abc|def)?xyz"; */
+ /* regex = "1*0(0|1)*"; */
+ /* regex = "a*b*"; */
+ /* regex = "a+X*y+c|p|R|Z*K*y*R+w|Y*6+n+h*k*w+V*F|W*B*e*"; */
+ /* regex = "abcd:(0|1)(0|1)(0|1)(0|1)(0|1)(0|1)(0|1)(0|1)(0|1)(0|1)(0|1)(0|1)(0|1)(0|1)(0|1)(0|1)(0|1)(0|1)(0|1)(0|1):(0|1)(0|1)(0|1)(0|1)(0|1)(0|1)(0|1)(0|1)(0|1)(0|1)(0|1)(0|1)(0|1)(0|1)(0|1)(0|1)(0|1)(0|1)(0|1)(0|1)(0|1)(0|1)(0|1)(0|1)(0|1)(0|1)(0|1)(0|1)(0|1)(0|1)(0|1)(0|1)(0|1)(0|1)(0|1)(0|1)(0|1)(0|1)(0|1)(0|1)(0|1)(0|1)(0|1)(0|1)"; */
+ /* regex = "abc(1|0)*def"; */
+ /* regex = "ab|ac"; */
+ /* regex = "(ab)(ab)*"; */
+ /* regex = "ab|cd|ef|gh"; */
+ /* regex = "a|b|c|d|e|f|g"; */
+ /* regex = "(ab)|(ac)"; */
+ /* regex = "a(b|c)"; */
+ /* regex = "a*a"; */
+ /* regex = "ab?(abcd)?"; */
+ /* regex = "(ab)+"; */
+ /* regex = "(ab|cs|df|sdf)*"; */
+ /* regex = "(ab|cd)*"; */
+ /* regex = "(cd|ab)*"; */
+ /* regex = "(ab|c)+"; */
+ /* regex = "(a|bc)+"; */
+ /* regex = "(ab|c)(ab|c)*"; */
+ /* regex = "(a|bc)(a|bc)*"; */
+ /* regex = "(ac|b)*"; */
+ /* regex = "a|aa*a"; */
dfa = GNUNET_REGEX_construct_dfa (regex, strlen (regex));
GNUNET_REGEX_automaton_save_graph (dfa, "dfa.dot");