Pegex::Input - Pegex Parser Input Abstraction
use Pegex; use Pegex::Input; my $ast = pegex(Pegex::Input->new(file => 'foo-grammar-file.pgx')) ->parse(Pegex::Input->new(string => $foo_input));
Pegex::Parser parses input. The input can be a string, a string reference, a file path, or an open file handle. Pegex::Input is an abstraction over any type of input. It provides a uniform inteface to the parser.
It also give the end user total control, when it is needed. In the rare case when you need to have Pegex parse a string that happens to be a filename, you'll need to use a Pegex::Input object.
You call new() with two arguments, where the first argument is the input type:
Pegex::Input->new(file => 'file.txt')
The following input types are available:
Input is a string.
Input is a string reference. This may be desirable for really long strings.
Input is a file path name to be opened and read.
Input is from a opened file handle, to be read.
Ingy döt Net <email@example.com>
Copyright (c) 2011, 2012. Ingy döt Net.
This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.