Bruce Momjian wrote:

Thomas Hallgren wrote:


Bruce Momjian wrote:


Josh Berkus wrote:



I think that private variables and private functions need to be part of the definition.


OK, so it seems we need:

        C static/private functions for schemas
        C static/private variables for schemas

Are private variables implemented via the temporary per-session schema?

        nested schemas

What does the standard say?



The standard says that rather then using nested schemas or packages in conjunction with functions in order to group functions with data, use user defined types with attributes and methods. Methods can be STATIC, INSTANCE or CONSTRUCTOR.



So it sounds like you group the functions into user-defined types, rather than nested schemas.

Yes, you'd get <schema>.<type>.<method> as the fully qualified name.

So you assocate functions with a table?


Not necessarily a table. A type is just a type. A type containing just static methods is not very different from an Oracle package. A table created from a type may of course have methods associated with it. That gets really interesting when you use INSTANCE methods. They act on a per row basis so that you can do things like:

SELECT x.someMethod() FROM someTable x;

rather than as today.

SELECT someFunction(x) FROM someTable x;

Regards,
Thomas Hallgren



---------------------------(end of broadcast)---------------------------
TIP 4: Don't 'kill -9' the postmaster

Reply via email to