Array::IntSpan::Fields(3) IntSpan array using integer fields as indices

SYNOPSIS


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') ;

DESCRIPTION

"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.

CONSTRUCTOR

new (...)

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 "8,8,8,8".

METHODS

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.

AUTHOR

Dominique Dumont, [email protected]

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.