Acme::Globule::Range - Alternative range operator
version 0.004
use Acme::Globule qw( Range ); foreach (<10..1>) { print "$_... "; } print "Lift-off!\n"; # put down that crack pipe... sub my_keys(\%) { my @hash = %{ $_[0] }; return @hash[ glob("0,2..$#hash") ]; } sub my_values(\%) { my @hash = %{ $_[0] }; return @hash[ glob("1,3..$#hash") ]; }
This is a Acme::Globule plugin that makes glob() do range operations. The following range formats are supported:
A..Z
Returns the integers between A and Z. If Z is lower than A, this will return a reversed range. Thus <1..9> is (1..9) and <9..1> is (reverse 1..9).
<1..9>
(1..9)
<9..1>
(reverse 1..9)
A,B..Z
Returns the integers between A and Z with a step such that the second value is B. Thus <1,3..9> is (1, 3, 5, 7, 9).
<1,3..9>
(1, 3, 5, 7, 9)
A..Y,Z
Returns the integers between A and Z with a step such that the next to last value is Y. Thus <1..7,9> is (1, 3, 5, 7, 9).
<1..7,9>
Any other string will fall through to the next plugin.
METHODS
The implementation of the range operator. You should never need to call this directly.
The syntax is rather rigid.
List::Maker which supports a wider range (*groan*) of syntax but affects glob() globally.
Peter Corlett <abuse@cabal.org.uk>
This software is copyright (c) 2011 by Peter Corlett.
This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.
To install Acme::Globule, copy and paste the appropriate command in to your terminal.
cpanm
cpanm Acme::Globule
CPAN shell
perl -MCPAN -e shell install Acme::Globule
For more information on module installation, please visit the detailed CPAN module installation guide.