Ashutosh Bapat <ashutosh.ba...@enterprisedb.com> writes: > I need to check type of expressions appearing in a Query tree and I am > using exprType() for that. But for certain expressions their type is not > defined like List, FromExpr, JoinExpr. Such expressions are acceptable in > the code, but expressions which have a type need to obey certain criteria > like they can not be composite type etc. exprType() throws error when it's > passed expressions which do not have type and hence I can not use it > directly. Is there a function, which would tell me whether a given > expression can have a type or not?
It seems to me that this is the result of fuzzy thinking. Neither FromExpr nor JoinExpr can possibly occur in random places in a query tree: they only appear in the join tree, all of which can be thought of as returning SETOF RECORD if you want, but it doesn't seem very helpful to apply exprType to the jointree. Lists likewise don't occur in any context where it seems helpful to associate a type with the node tree. So I think you need to think a bit harder about what you need to accomplish and which parts of a query you need to accomplish it on. regards, tom lane -- Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-hackers