pg-libphonenumber/pg_libphonenumber.sql.template

41 lines
1.2 KiB
Plaintext
Raw Normal View History

-- complain if script is sourced in psql, rather than via CREATE EXTENSION
\echo Use "CREATE EXTENSION pg_libphonenumber" to load this file. \quit
CREATE TYPE phone_number;
CREATE FUNCTION phone_number_in(cstring) RETURNS phone_number
LANGUAGE c IMMUTABLE STRICT
AS 'pg_libphonenumber', 'phone_number_in';
CREATE FUNCTION phone_number_out(phone_number) RETURNS cstring
LANGUAGE c IMMUTABLE STRICT
AS 'pg_libphonenumber', 'phone_number_out';
CREATE FUNCTION phone_number_recv(internal) RETURNS phone_number
LANGUAGE c IMMUTABLE STRICT
AS 'pg_libphonenumber', 'phone_number_recv';
CREATE FUNCTION phone_number_send(phone_number) RETURNS bytea
LANGUAGE c IMMUTABLE STRICT
AS 'pg_libphonenumber', 'phone_number_send';
--SIZEOF_PHONE_NUMBER is replaced when generating the "real" script.
CREATE TYPE phone_number (
INTERNALLENGTH = SIZEOF_PHONE_NUMBER,
INPUT = phone_number_in,
OUTPUT = phone_number_out,
RECEIVE = phone_number_recv,
SEND = phone_number_send,
ALIGNMENT = double,
STORAGE = plain
);
CREATE CAST (phone_number AS text)
WITH INOUT;
CREATE FUNCTION parse_phone_number(text, text) RETURNS phone_number
LANGUAGE c IMMUTABLE STRICT
AS 'pg_libphonenumber', 'parse_phone_number';
-- vim:syntax=sql