Name : perl-Devel-Tokenizer-C
| |
Version : 0.11
| Vendor : obs://build_opensuse_org/devel:languages:perl
|
Release : 1.48
| Date : 2024-08-05 19:30:36
|
Group : Development/Libraries/Perl
| Source RPM : perl-Devel-Tokenizer-C-0.11-1.48.src.rpm
|
Size : 0.02 MB
| |
Packager : (none)
| |
Summary : Generate C source for fast keyword tokenizer
|
Description :
The Devel::Tokenizer::C module provides a small class for creating the essential ANSI C source code for a fast keyword tokenizer.
The generated code is optimized for speed. On the ANSI-C keyword set, it\'s 2-3 times faster than equivalent code generated with the \'gprof\' utility.
The above example would print the following C source code:
switch (tokstr[0]) { case \'b\': switch (tokstr[1]) { case \'a\': switch (tokstr[2]) { case \'r\': if (tokstr[3] == \'\\0\') { /* bar */ return BAR; }
goto unknown;
case \'z\': if (tokstr[3] == \'\\0\') { /* baz */ return BAZ; }
goto unknown;
default: goto unknown; }
default: goto unknown; }
case \'f\': switch (tokstr[1]) { case \'o\': switch (tokstr[2]) { case \'o\': if (tokstr[3] == \'\\0\') { /* foo */ return FOO; }
goto unknown;
case \'r\': if (tokstr[3] == \'\\0\') { /* for */ return FOR; }
goto unknown;
default: goto unknown; }
default: goto unknown; }
default: goto unknown; }
So the generated code only includes the main \'switch\' statement for the tokenizer. You can configure most of the generated code to fit for your application.
|
RPM found in directory: /packages/linux-pbone/ftp5.gwdg.de/pub/opensuse/repositories/devel:/languages:/perl:/CPAN-D/openSUSE_Tumbleweed/noarch |