Scroll to navigation

PPIx::Regexp::Util(3pm) User Contributed Perl Documentation PPIx::Regexp::Util(3pm)

NAME

PPIx::Regexp::Util - Utility functions for PPIx::Regexp;

SYNOPSIS

 use PPIx::Regexp::Util qw{ __instance };
     .
     .
     .
 __instance( $foo, 'Bar' )
     or die '$foo is not a Bar';

DESCRIPTION

This module contains utility functions for PPIx::Regexp which it is convenient to centralize.

The contents of this module are private to the PPIx::Regexp package. This documentation is provided for the author's convenience only. Anything in this module is subject to change without notice. Caveat user.

This module exports nothing by default.

SUBROUTINES

This module can export the following subroutines:

__instance

 __instance( $foo, 'Bar' )
     and print '$foo isa Bar', "\n";

This subroutine returns true if its first argument is an instance of the class specified by its second argument. Unlike "UNIVERSAL::isa", the result is always false unless the first argument is a reference.

__is_ppi_regexp_element

 __is_ppi_regexp_element( $elem )
   and print "$elem is a regexp of some sort\n";

This subroutine takes as its argument a PPI::Element. It returns a true value if the argument represents a regular expression of some sort, and a false value otherwise.

__ns_can

This method is analogous to "can()", but returns a reference to the code only if it is actually implemented by the invoking name space.

__to_ordinal_en

This subroutine takes as its argument an integer and returns a string representing its ordinal in English. For example

 say __to_ordinal_en( 17 );
 # 17th

SEE ALSO

Params::Util, which I recommend, but in the case of "PPIx::Regexp" I did not want to introduce a dependency on an XS module when all I really wanted was the function of that module's "_INSTANCE()" subroutine.

SUPPORT

Support is by the author. Please file bug reports at <http://rt.cpan.org>, or in electronic mail to the author.

AUTHOR

Thomas R. Wyant, III wyant at cpan dot org

COPYRIGHT AND LICENSE

Copyright (C) 2010-2019 by Thomas R. Wyant, III

This program is free software; you can redistribute it and/or modify it under the same terms as Perl 5.10.0. For more details, see the full text of the licenses in the directory LICENSES.

This program is distributed in the hope that it will be useful, but without any warranty; without even the implied warranty of merchantability or fitness for a particular purpose.

2019-04-03 perl v5.28.1