Ingy döt Net > Pegex-0.20 > Pegex::Parser



Annotate this POD



Open  0
View/Report Bugs
Source   Latest Release: Pegex-0.21


    use Pegex::Parser;
    use SomeGrammarClass;
    use SomeReceiverClass;

    my $parser = Pegex::Parser->new(
        grammar => SomeGrammarClass->new,
        receiver => SomeReceiverClass->new,

    my $result = $parser->parse($SomeInputText);


Pegex::Parser is the Pegex component that provides the parsing engine runtime. It requires a Grammar object and a Receiver object. It's parse() method takes an input that is expected to be matched by the grammar, and applies the grammar rules to the input. As the grammar is applied the receiver is notified of matches. The receiver is free to do whatever it wishes, but often times it builds the data into a structure that is commonly known as an AST (Abstract Syntax Tree).

When the parse method is complete it returns whatever object the receiver has provided as the final result. If the grammar fails to match the input along the way, the parse method will throw an error with much information about the failure.

syntax highlighting: