Fix obsolete comment regarding FSM truncation.
[PostgreSQL.git] / src / include / parser / parse_type.h
blob31fa68c16151cff33fec05a5bd9098bc926fa199
1 /*-------------------------------------------------------------------------
3 * parse_type.h
4 * handle type operations for parser
6 * Portions Copyright (c) 1996-2008, PostgreSQL Global Development Group
7 * Portions Copyright (c) 1994, Regents of the University of California
9 * $PostgreSQL$
11 *-------------------------------------------------------------------------
13 #ifndef PARSE_TYPE_H
14 #define PARSE_TYPE_H
16 #include "access/htup.h"
17 #include "parser/parse_node.h"
20 typedef HeapTuple Type;
22 extern Type LookupTypeName(ParseState *pstate, const TypeName *typename,
23 int32 *typmod_p);
24 extern Type typenameType(ParseState *pstate, const TypeName *typename,
25 int32 *typmod_p);
26 extern Oid typenameTypeId(ParseState *pstate, const TypeName *typename,
27 int32 *typmod_p);
29 extern char *TypeNameToString(const TypeName *typename);
30 extern char *TypeNameListToString(List *typenames);
32 extern Type typeidType(Oid id);
34 extern Oid typeTypeId(Type tp);
35 extern int16 typeLen(Type t);
36 extern bool typeByVal(Type t);
37 extern char *typeTypeName(Type t);
38 extern Oid typeTypeRelid(Type typ);
39 extern Datum stringTypeDatum(Type tp, char *string, int32 atttypmod);
41 extern Oid typeidTypeRelid(Oid type_id);
43 extern void parseTypeString(const char *str, Oid *type_id, int32 *typmod_p);
45 #define ISCOMPLEX(typeid) (typeidTypeRelid(typeid) != InvalidOid)
47 #endif /* PARSE_TYPE_H */