PPI::Token::Quote.3pm

Langue: en

Version: 2010-07-06 (fedora - 01/12/10)

Section: 3 (Bibliothèques de fonctions)

NAME

PPI::Token::Quote - String quote abstract base class

INHERITANCE

   PPI::Token::Quote
   isa PPI::Token
       isa PPI::Element
 
 

DESCRIPTION

The "PPI::Token::Quote" class is never instantiated, and simply provides a common abstract base class for the four quote classes. In PPI, a ``quote'' is limited to only the quote-like things that themselves directly represent a string. (although this includes double quotes with interpolated elements inside them).

The subclasses of "PPI::Token::Quote" are:

'' - PPI::Token::Quote::Single
q{} - PPI::Token::Quote::Literal
- PPI::Token::Quote::Double
qq{} - PPI::Token::Quote::Interpolate

The names are hopefully obvious enough not to have to explain what each class is here. See their respective pages for more details.

Please note that although the here-doc does represent a literal string, it is such a nasty piece of work that in PPI it is given the honor of its own token class (PPI::Token::HereDoc).

METHODS

string

The "string" method is provided by all four ::Quote classes. It won't get you the actual literal Perl value, but it will strip off the wrapping of the quotes.
   # The following all return foo from the ->string method
   'foo'
   "foo"
   q{foo}
   qq <foo>
 
 

literal

The "literal" method is provided by ::Quote:Literal and ::Quote::Single. This returns the value of the string as Perl sees it: without the quote marks and with "\\" and "\'" resolved to "\" and "'".

The "literal" method is not implemented by ::Quote::Double or ::Quote::Interpolate yet.

SUPPORT

See the support section in the main module.

AUTHOR

Adam Kennedy <adamk@cpan.org> Copyright 2001 - 2010 Adam Kennedy.

This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.

The full text of the license can be found in the LICENSE file included with this module.