TITLE ^

Glob - Parse and compile glob notation expressions.

DESCRIPTION ^

A parser for shell-stype glob notation.

Functions ^

compile_glob(PMC source, PMC adverbs :slurpy :named)

Return the result of compiling the glob expression given by source. Normally this function is obtained using compreg 'PGE::Glob' instead of calling it directly.

Returns the compiled regular expression. If a target named parameter is supplied, then it will return the parse tree (target='parse'), the expression tree (target='exp'), or the resulting PIR code (target='PIR').

glob(PMC mob, PMC adverbs :slurpy :named)

Parses a glob expression, returning the corresponding parse PGE::Match object. This is installed as a <glob> subrule in PGE::Grammar, so one can call it from another regex in order to parse a valid glob expression.

glob_literal(PMC mob, PMC adverbs)

Scan a literal from a string, stopping at any metacharacters such as * or [. Return the matched portion, with the value set to the decoded literal.

glob_quest(PMC mob, PMC adverbs)

Process a ? wildcard character in a glob. For this we just return a CCShortcut that is set to '.'

glob_star(PMC mob, PMC adverbs)

Process a * wildcard character in a glob. This is a little bit more complex, as we have to return a quantified '.'.

glob_enum(PMC mob, PMC adverbs)

Parse an enumerated character list, such as [abcd], [!abcd], and [^0-9].

glob_alt(PMC mob, PMC adverbs)

Parse an enumerated character list, such as [abcd], [!abcd], and [^0-9].

AUTHOR ^

PGE::Glob was originally authored by Jonathan Scott Duff (duff@pobox.com), It has been updated for later versions of PGE by Patrick R. Michaud (pmichaud@pobox.com).


parrot