Re: Creating a 'SET' type - Mailing list pgsql-hackers

From Tom Lane
Subject Re: Creating a 'SET' type
Date
Msg-id 9092.976726559@sss.pgh.pa.us
Whole thread Raw
In response to Creating a 'SET' type  ("Christopher Kings-Lynne" <chriskl@familyhealth.com.au>)
List pgsql-hackers
"Christopher Kings-Lynne" <chriskl@familyhealth.com.au> writes:
> However, is it possible to create a type that has different parameters
> wherever it is used.
> For instance - the varchar type takes as a parameter the max characters in
> the field.  Although there is only one varchar type, it has different
> properties depending on whether or not it is varchar(5) or varchar(20).

Right now, that support is hard-wired into the parser for each such type
(and there aren't many).  It might be interesting to look at what it
would take to make a generalized mechanism whereby a type name could
accept parameters, with a type-specific routine being responsible for
reducing the parameters down to a typmod value.  One problem you'd run
into, I think, is creation of parsing ambiguities --- is NUMERIC(9,2)
a type specification, or a function call?  Right now it's a type spec
because NUMERIC is a keyword in the grammar, but that won't do for an
extensible mechanism.
        regards, tom lane


pgsql-hackers by date:

Previous
From: Oleg Bartunov
Date:
Subject: index support for arrays (GiST)
Next
From: Peter Eisentraut
Date:
Subject: Re: [GENERAL] No postgres on Solaris