Algorithm-ConstructDFA-XS
view release on metacpan or search on metacpan
t/02simple.t view on Meta::CPAN
$dfa = revdet(revdet( $dfa ));
}
my $dfa_g = Graph::Directed->new;
my $dfa_g_final = "final";
for my $s (keys %$dfa) {
for my $label (keys %{$dfa->{$s}{NextOver}}) {
my $mid = $s . ':' . $label;
$dfa_g->add_edge($s, $mid);
$dfa_g->add_edge($mid, $dfa->{$s}{NextOver}{$label});
$dfa_g->set_vertex_attribute($mid, 'label', $label) if length $label;
$dfa_g->add_edge($s, $dfa_g_final)
if $dfa->{$s}{Accepts};
$dfa_g->add_edge($dfa->{$s}{NextOver}{$label}, $dfa_g_final)
if $dfa->{$dfa->{$s}{NextOver}{$label}}{Accepts};
}
}
my $make_random_path_enumerator = sub {
return Graph::RandomPath->create_generator(@_);
my ($graph, $src, $dst) = @_;
( run in 0.606 second using v1.01-cache-2.11-cpan-65fba6d93b7 )