parrotcode: implementation of PGE match objects | |
Contents | Compilers |
PGE::Match - implementation of PGE match objects
This file implements match objects returned by the Parrot Grammar Engine.
new(PMC src, [ PMC adverbs :slurpy :named ])
src
.
If the grammar
adverb is specified,
then the new Match object is of the given grammar class,
otherwise if src
is an instance of Match
(or a subclass) then that class is used to create the object,
otherwise it uses the class of the invocant.pos
,
p
,
continue
,
or c
adverbs specify where the match object should begin.
If no starting position is given,
the current position of src
is used if it has one,
otherwise the start position is at offset zero.
The from
adverb can be used to initialize the Match's $.from
attribute to a value other than the starting position.rw
adverb causes the invocant to be modified and returned instead of creating a new Match object.new
method returns several values to the caller: the initialized match object,
the target the object is matching against,
a reference to its $.from attribute,
a reference to its $.pos attribute,
the value of pos/p/continue/c
used to initialize the object,
and whether or not a continue flag is set or implied.next()
from([int pos])
to([int pos])
text()
item()
result_object([pmc obj])
find_key([ key1, key2, ... ])
key1
,
key2
,
etc.
in the current Match object,
and return it.
Returns '' if none of the specified keys are found.
If no keys are specified,
then simply return the first key found._failcut(int cutvalue)
cutvalue
.__get_bool()
__get_integer()
__get_number()
__get_string()
Patrick Michaud (pmichaud@pobox.com) is the author and maintainer. Patches and suggestions should be sent to the Perl 6 compiler list (perl6-compiler@perl.org).
|