David Cantrell > Number-Phone-3.0005 > Number::Phone::NANP

Download:
Number-Phone-3.0005.tar.gz

Dependencies

Annotate this POD

View/Report Bugs
Module Version: 1.4   Source  

NAME ^

Number::Phone::NANP - NANP-specific methods for Number::Phone

DESCRIPTION ^

This is a base class which encapsulates that information about phone numbers in the North American Numbering Plan (NANP) which are common to all NANP countries - that is, those whose international dialling code is +1. If you are dealing with phone numbers in any of those countries, you should use this module. It will then load the country-specific modules for you as needed.

Country-specific modules should inherit from this module and provide their own versions of methods as necessary. However, they should not provide an is_valid method or a constructor.

SYNOPSIS ^

in a program:

    use Number::Phone;

    my $phone_number = Number::Phone->new('+1 202 418 1440');
    # $phone_number is now a Number::Phone::NANP::US

    my $other_phone_number = Number::Phone->new('+1 866 623 2282');
    # $phone_number is non-geographic so is a Number::Phone::NANP

in a subclass:

    package Number::Phone::NANP::CA;
    use base 'Number::Phone::NANP';

METHODS ^

The following methods from Number::Phone are overridden:

is_valid

The number is valid within the numbering scheme. It may or may not yet be allocated, or it may be reserved.

country_code

Returns 1.

country

Returns the two-letter ISO country code for this number.

regulator

Returns informational text relevant to the whole NANP. Note that when this method is inherited by a subclass it returns undef meaning "not known", but returns information about the NANPA when called on an object of class Number::Phone::NANP.

areacode

Return the area code for the number.

areaname

Return the name for the area code, if applicable, otherwise returns undef. For instance, for a number beginning with +1 201 200 it would return "Jersey City, NJ".

subscriber

Return the subscriber part of the number.

format

Return a sanely formatted version of the number, complete with IDD code.

BUGS/FEEDBACK ^

Please report bugs at https://github.com/DrHyde/perl-modules-Number-Phone/issues, including, if possible, a test case.

I welcome feedback from users.

LICENCE ^

You may use, modify and distribute this software under the same terms as perl itself.

AUTHOR ^

David Cantrell <david@cantrell.org.uk>

Copyright 2012

syntax highlighting: