Parsing, formatting, and validating international phone numbers.
This package provides bindings for the C++ version of the libphonenumber library. The bindings currently do not include AsYouTypeFormatter
and ShortNumberInfo
. The C++ library must be of version >= 8.7.0.
The interface largely resembles that of the original unified C++, Java, and JavaScript version of the library, with some minor changes to make the interface more Haskell-like.
The provided functions are pure, under the assumption that we are the only user of the C++ library, i.e. that no one else has installed a global logger which could observe side-effects from library calls.
The underlying library internally uses UTF-8 encoded byte strings. To avoid decoding overhead where it is unnecessary, and to avoid a dependency on text
, we use ByteString
throughout the library instead of Data.Text.Text
.