
PPI::Token::Number::Version - Token class for a byte-packed number

$n = 1.1.0; $n = 127.0.0.1; $n = 10_000.10_000.10_000; $n = v1.2.3.4

PPI::Token::Number::Version
isa PPI::Token::Number
isa PPI::Token
isa PPI::Element

The PPI::Token::Number::Version class is used for tokens that have multiple decimal points. In truth, these aren't treated like numbers at all by Perl, but they look like numbers to a parser.

Returns the base for the number: 256.
Return the numeric value of this token.
my $doc1 = new_ok( 'PPI::Document' => [ \'1.2.3.4' ] ); my $doc2 = new_ok( 'PPI::Document' => [ \'v1.2.3.4' ] ); isa_ok( $doc1->child(0), 'PPI::Statement' ); isa_ok( $doc2->child(0), 'PPI::Statement' ); isa_ok( $doc1->child(0)->child(0), 'PPI::Token::Number::Version' ); isa_ok( $doc2->child(0)->child(0), 'PPI::Token::Number::Version' );
my $literal1 = $doc1->child(0)->child(0)->literal; my $literal2 = $doc2->child(0)->child(0)->literal; is( length($literal1), 4, 'The literal length of doc1 is 4' ); is( length($literal2), 4, 'The literal length of doc1 is 4' ); is( $literal1, $literal2, 'Literals match for 1.2.3.4 vs v1.2.3.4' );

- Does not handle leading minus sign correctly. Should translate to a DashedWord. See http://perlmonks.org/?node_id=574573
-95.0.1.0 --> "-_\000\cA\000" -96.0.1.0 --> Argument "`\0^A\0" isn't numeric in negation (-)

See the support section in the main module.

Chris Dolan <cdolan@cpan.org>

Copyright 2006 Chris Dolan.
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.