Number::Phone::Formatters(3) how to write custom formatters


How to write custom formatters for phone numbers.


Formatters are modules that live in the "Number::Phone::Formatter::*" namespace. Users only need to type the last bit of the name, without the leading "Number::Phone::Formatter::", when calling the "format_using" method of Number::Phone.

The 'E123' formatter name is reserved and implemented by Number::Phone subclasses in their "format()" methods.


There is one compulsory method, "format" that you must write. It will be called as a class method, with a number in E.123 international format as its only argument, looking something like '+CC NNN NNN NNN'. The gory details are at <> but in summary, you'll get:
a plus sign
a 1, 2 or 3 digit country code
a mixture of digits and whitespace


See Number::Phone::Formatter::Raw for an example.


Copyright 2016 David Cantrell <[email protected]>

This documentation is free-as-in-speech software. It may be used, distributed, and modified under the terms of the Creative Commons Attribution-Share Alike 2.0 UK: England & Wales License, whose text you may read at <>.