#!/usr/bin/perl ($progname = $0) =~ s,.*/,,; print "/* This file is autogenerated by $progname */\n"; print "typedef char*(*PFUNC)(PSTATE*, char *beg, char *end, U32 utf8, SV* self);\n"; print "static PFUNC parsefunc[] = {\n"; for my $c (0..255) { local $_ = chr($c); my $func = "null"; if (/^[A-Za-z]$/) { $func = "start"; } elsif ($_ eq "/") { $func = "end"; } elsif ($_ eq "!") { $func = "decl"; } elsif ($_ eq "?") { $func = "process"; } printf " %-15s /* %3d */\n", "parse_$func,", $c; } print "};\n";