Array::IntSpan::Fields - IntSpan array using integer fields as indices
use Array::IntSpan::Fields; my $foo = Array::IntSpan::Fields ->new( '1.2.4', ['0.0.1','0.1.0','ab'], ['1.0.0','1.0.3','cd']); print "Address 0.0.15 has ".$foo->lookup("0.0.15").".\n"; $foo->set_range('1.0.4','1.1.0','ef') ;
Array::IntSpan::Fields brings the advantages of
Array::IntSpan to indices made of integer fields like an IP address and an ANSI SS7 point code.
The number of integer and their maximum value is defined when calling the constructor (or the
set_format method). The example in the synopsis defines an indice with 3 fields where their maximum values are 1,3,15 (or 0x1,0x3,0xf).
This module converts the fields into integer before storing them into the Array::IntSpan module.
The first parameter defines the size of the integer of the fields, in number of bits. For an IP address, the field definition would be
All methods of Array::IntSpan are available.
set_format( field_description )
Set another field description. Beware: no conversion or checking is done. When changing the format, old indices may become illegal.
int_to_field ( integer )
Returns the field representation of the integer.
field_to_int ( field )
Returns the integer value of the field. May craok if the fields values are too great with respect to the filed description.
Dominique Dumont, email@example.com
Copyright (c) 2003 Dominique Dumont. All rights reserved. This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.