Re: Trying to add a type modifier to user created type - Mailing list pgsql-general

From Yeb Havinga
Subject Re: Trying to add a type modifier to user created type
Date
Msg-id 4B7D0575.7080607@gmail.com
Whole thread Raw
In response to Trying to add a type modifier to user created type  (Carsten Kropf <ckropf2@fh-hof.de>)
Responses Re: Trying to add a type modifier to user created type  (Tom Lane <tgl@sss.pgh.pa.us>)
List pgsql-general
Carsten Kropf wrote:
> Hi *,
> I have the following problem:
> I wanted to add a new type that supports modifiers (comparable to numeric/varchar). I succeeded in adding the type
modifierfunctions to my new type. These methods are called and the modifier is set. However the modifiers are not
appliedhere. I don't know exactly how to get the modifiers to be applied to my type. I looked into the source code of
varchar/numericand a function called the same name as the type is added in there that gets called with a value of the
particulartype and the typmod, respectively. But I don't know, how to register this function properly in order to get
called,when sth is to be stored in the database. 
> column. How can I achieve this/What do I have to do to get it to work?
>

It's been a while but I still remember exactly the same question
(frustration?) from some while ago (maybe it is something for the docs)

You need to add a cast from the type to itself, e.g.

-- typmod coercion
CREATE CAST (complex AS complex)
WITH FUNCTION complextypmod(complex,int4)
AS IMPLICIT;

Where complextypemod would be the typmod apply functions (int4 is the
typmod)

Regards,
Yeb Havinga


pgsql-general by date:

Previous
From: Greg Smith
Date:
Subject: Re: about effective_cache_size
Next
From: Dimitri Fontaine
Date:
Subject: Re: One solution for Packages in Postgre