*
*
* IDENTIFICATION
- * $Header: /cvsroot/pgsql/src/backend/access/common/tupdesc.c,v 1.40 1998/06/15 19:27:45 momjian Exp $
+ * $Header: /cvsroot/pgsql/src/backend/access/common/tupdesc.c,v 1.41 1998/07/12 21:29:13 momjian Exp $
*
* NOTES
* some of the executor utility code such as "ExecTypeFromTL" should be
AttrNumber attributeNumber,
char *attributeName,
Oid typeid,
- int16 typmod,
+ int32 typmod,
int attdim,
bool attisset)
{
TupleConstr *constr = (TupleConstr *) palloc(sizeof(TupleConstr));
char *attname;
char *typename;
- int16 atttypmod;
+ int32 atttypmod;
int attdim;
int ndef = 0;
bool attisset;
*
*
* IDENTIFICATION
- * $Header: /cvsroot/pgsql/src/backend/catalog/index.c,v 1.43 1998/06/15 19:28:09 momjian Exp $
+ * $Header: /cvsroot/pgsql/src/backend/catalog/index.c,v 1.44 1998/07/12 21:29:13 momjian Exp $
*
*
* INTERFACE ROUTINES
* AttrNumber attnum;
* uint32 attnelems;
* int32 attcacheoff;
- * int16 atttypmod;
+ * int32 atttypmod;
* bool attbyval;
* bool attisset;
* char attalign;
*
*
* IDENTIFICATION
- * $Header: /cvsroot/pgsql/src/backend/commands/copy.c,v 1.47 1998/06/19 11:40:46 scrappy Exp $
+ * $Header: /cvsroot/pgsql/src/backend/commands/copy.c,v 1.48 1998/07/12 21:29:14 momjian Exp $
*
*-------------------------------------------------------------------------
*/
FmgrInfo *out_functions;
Oid out_func_oid;
Oid *elements;
- int16 *typmod;
+ int32 *typmod;
Datum value;
bool isnull; /* The attribute we are copying is null */
char *nulls;
{
out_functions = (FmgrInfo *) palloc(attr_count * sizeof(FmgrInfo));
elements = (Oid *) palloc(attr_count * sizeof(Oid));
- typmod = (int16 *) palloc(attr_count * sizeof(int16));
+ typmod = (int32 *) palloc(attr_count * sizeof(int16));
for (i = 0; i < attr_count; i++)
{
out_func_oid = (Oid) GetOutputFunction(attr[i]->atttypid);
tuples_read = 0;
bool reading_to_eof = true;
Oid *elements;
- int16 *typmod;
+ int32 *typmod;
FuncIndexInfo *finfo,
**finfoP = NULL;
TupleDesc *itupdescArr;
{
in_functions = (FmgrInfo *) palloc(attr_count * sizeof(FmgrInfo));
elements = (Oid *) palloc(attr_count * sizeof(Oid));
- typmod = (int16 *) palloc(attr_count * sizeof(int16));
+ typmod = (int32 *) palloc(attr_count * sizeof(int16));
for (i = 0; i < attr_count; i++)
{
in_func_oid = (Oid) GetInputFunction(attr[i]->atttypid);
*
*
* IDENTIFICATION
- * $Header: /cvsroot/pgsql/src/backend/nodes/makefuncs.c,v 1.9 1998/02/26 04:32:08 momjian Exp $
+ * $Header: /cvsroot/pgsql/src/backend/nodes/makefuncs.c,v 1.10 1998/07/12 21:29:16 momjian Exp $
*
* NOTES
* Creator functions in POSTGRES 4.2 are generated automatically. Most of
makeVar(Index varno,
AttrNumber varattno,
Oid vartype,
- int16 vartypmod,
+ int32 vartypmod,
Index varlevelsup,
Index varnoold,
AttrNumber varoattno)
Resdom *
makeResdom(AttrNumber resno,
Oid restype,
- int16 restypmod,
+ int32 restypmod,
char *resname,
Index reskey,
Oid reskeyop,
*
*
* IDENTIFICATION
- * $Header: /cvsroot/pgsql/src/backend/optimizer/prep/preptlist.c,v 1.11 1998/06/15 19:28:46 momjian Exp $
+ * $Header: /cvsroot/pgsql/src/backend/optimizer/prep/preptlist.c,v 1.12 1998/07/12 21:29:17 momjian Exp $
*
*-------------------------------------------------------------------------
*/
temp_list = MakeTLE(makeResdom(attno,
atttype,
- get_atttypmod(relid, attno),
+ get_atttypmod(relid, attno),
attname,
0,
(Oid) 0,
*
*
* IDENTIFICATION
- * $Header: /cvsroot/pgsql/src/backend/parser/parse_expr.c,v 1.31 1998/07/08 14:04:10 thomas Exp $
+ * $Header: /cvsroot/pgsql/src/backend/parser/parse_expr.c,v 1.32 1998/07/12 21:29:18 momjian Exp $
*
*-------------------------------------------------------------------------
*/
#include "parser/parse_target.h"
#include "utils/builtins.h"
-static Node *parser_typecast(Value *expr, TypeName *typename, int16 atttypmod);
+static Node *parser_typecast(Value *expr, TypeName *typename, int32 atttypmod);
/*
* transformExpr -
}
static Node *
-parser_typecast(Value *expr, TypeName *typename, int16 atttypmod)
+parser_typecast(Value *expr, TypeName *typename, int32 atttypmod)
{
/* check for passing non-ints */
Const *adt;
* Convert (only) constants to specified type.
*/
Node *
-parser_typecast2(Node *expr, Oid exprType, Type tp, int16 atttypmod)
+parser_typecast2(Node *expr, Oid exprType, Type tp, int32 atttypmod)
{
/* check for passing non-ints */
Const *adt;
*
*
* IDENTIFICATION
- * $Header: /cvsroot/pgsql/src/backend/parser/parse_func.c,v 1.20 1998/07/08 14:04:10 thomas Exp $
+ * $Header: /cvsroot/pgsql/src/backend/parser/parse_func.c,v 1.21 1998/07/12 21:29:19 momjian Exp $
*
*-------------------------------------------------------------------------
*/
Resdom *resnode;
Var *varnode;
Oid typeid;
- int16 type_mod;
+ int32 type_mod;
int attno;
attno = get_attnum(relid, attname);
*
*
* IDENTIFICATION
- * $Header: /cvsroot/pgsql/src/backend/parser/parse_node.c,v 1.16 1998/05/29 14:00:21 thomas Exp $
+ * $Header: /cvsroot/pgsql/src/backend/parser/parse_node.c,v 1.17 1998/07/12 21:29:20 momjian Exp $
*
*-------------------------------------------------------------------------
*/
int vnum,
attid;
Oid vartypeid;
- int16 type_mod;
+ int32 type_mod;
int sublevels_up;
vnum = refnameRangeTablePosn(pstate, refname, &sublevels_up);
*
*
* IDENTIFICATION
- * $Header: /cvsroot/pgsql/src/backend/parser/parse_target.c,v 1.17 1998/07/08 14:04:11 thomas Exp $
+ * $Header: /cvsroot/pgsql/src/backend/parser/parse_target.c,v 1.18 1998/07/12 21:29:20 momjian Exp $
*
*-------------------------------------------------------------------------
*/
SizeTargetExpr(ParseState *pstate,
Node *expr,
Oid attrtype,
- int16 attrtypmod);
+ int32 attrtypmod);
/* transformTargetIdent()
resdomno_target;
RangeTblEntry *rte;
char *target_colname;
- int16 attrtypmod,
+ int32 attrtypmod,
attrtypmod_target;
target_colname = *resname;
if (expr == NULL)
{
char *name;
- int16 type_mod;
+ int32 type_mod;
name = ((*resname != NULL)? *resname: colname);
case T_Attr:
{
Oid type_id;
- int16 type_mod;
+ int32 type_mod;
Attr *att = (Attr *) res->val;
Node *result;
char *attrname;
SizeTargetExpr(ParseState *pstate,
Node *expr,
Oid attrtype,
- int16 attrtypmod)
+ int32 attrtypmod)
{
int i;
HeapTuple ftup;
{
Oid type_id,
attrtype;
- int16 type_mod,
+ int32 type_mod,
attrtypmod;
int resdomno;
Relation rd;
*
*
* IDENTIFICATION
- * $Header: /cvsroot/pgsql/src/backend/parser/parse_type.c,v 1.11 1998/06/15 19:28:56 momjian Exp $
+ * $Header: /cvsroot/pgsql/src/backend/parser/parse_type.c,v 1.12 1998/07/12 21:29:21 momjian Exp $
*
*-------------------------------------------------------------------------
*/
/* Given a type structure and a string, returns the internal form of
that string */
char *
-stringTypeString(Type tp, char *string, int16 atttypmod)
+stringTypeString(Type tp, char *string, int32 atttypmod)
{
Oid op;
Oid typelem;
*
*
* IDENTIFICATION
- * $Header: /cvsroot/pgsql/src/backend/utils/adt/arrayfuncs.c,v 1.30 1998/06/15 19:29:32 momjian Exp $
+ * $Header: /cvsroot/pgsql/src/backend/utils/adt/arrayfuncs.c,v 1.31 1998/07/12 21:29:22 momjian Exp $
*
*-------------------------------------------------------------------------
*/
static int _ArrayCount(char *str, int dim[], int typdelim);
static char *
_ReadArrayStr(char *arrayStr, int nitems, int ndim, int dim[],
- FmgrInfo *inputproc, Oid typelem, int16 typmod,
+ FmgrInfo *inputproc, Oid typelem, int32 typmod,
char typdelim, int typlen, bool typbyval,
char typalign, int *nbytes);
char *
array_in(char *string, /* input array in external form */
Oid element_type, /* type OID of an array element */
- int16 typmod)
+ int32 typmod)
{
int typlen;
bool typbyval,
FmgrInfo *inputproc, /* function used for the
* conversion */
Oid typelem,
- int16 typmod,
+ int32 typmod,
char typdelim,
int typlen,
bool typbyval,
*
*
* IDENTIFICATION
- * $Header: /cvsroot/pgsql/src/backend/utils/adt/varchar.c,v 1.34 1998/06/16 06:41:50 momjian Exp $
+ * $Header: /cvsroot/pgsql/src/backend/utils/adt/varchar.c,v 1.35 1998/07/12 21:29:23 momjian Exp $
*
*-------------------------------------------------------------------------
*/
* because we pass typelem as the second argument for array_in.)
*/
char *
-bpcharin(char *s, int dummy, int16 atttypmod)
+bpcharin(char *s, int dummy, int32 atttypmod)
{
char *result,
*r;
* because we pass typelem as the second argument for array_in.)
*/
char *
-varcharin(char *s, int dummy, int16 atttypmod)
+varcharin(char *s, int dummy, int32 atttypmod)
{
char *result;
int len;
*
*
* IDENTIFICATION
- * $Header: /cvsroot/pgsql/src/backend/utils/cache/lsyscache.c,v 1.14 1998/06/15 19:29:40 momjian Exp $
+ * $Header: /cvsroot/pgsql/src/backend/utils/cache/lsyscache.c,v 1.15 1998/07/12 21:29:24 momjian Exp $
*
* NOTES
* Eventually, the index information should go through here, too.
* return the "atttypmod" field from the attribute relation.
*
*/
-int16
+int32
get_atttypmod(Oid relid, AttrNumber attnum)
{
FormData_pg_attribute att_tup;
if (SearchSysCacheStruct(ATTNUM,
(char *) &att_tup,
ObjectIdGetDatum(relid),
- UInt16GetDatum(attnum),
+ Int32GetDatum(attnum),
0, 0))
return att_tup.atttypmod;
else
*
* Copyright (c) 1994, Regents of the University of California
*
- * $Id: tupdesc.h,v 1.16 1998/02/26 04:40:31 momjian Exp $
+ * $Id: tupdesc.h,v 1.17 1998/07/12 21:29:26 momjian Exp $
*
*-------------------------------------------------------------------------
*/
AttrNumber attributeNumber,
char *attributeName,
Oid typeid,
- int16 typmod,
+ int32 typmod,
int attdim,
bool attisset);
*
* Copyright (c) 1994, Regents of the University of California
*
- * $Id: pg_attribute.h,v 1.32 1998/03/07 04:49:57 momjian Exp $
+ * $Id: pg_attribute.h,v 1.33 1998/07/12 21:29:28 momjian Exp $
*
* NOTES
* the genbki.sh script reads this file and generates .bki
* This speeds up the attribute walking process.
*/
- int2 atttypmod;
+ int4 atttypmod;
/*
* atttypmod records type-specific modifications supplied at table
{ 1249, {"attnum"}, 21, 0, 2, 6, 0, -1, -1, '\001', '\0', 's', '\0', '\0' }, \
{ 1249, {"attnelems"}, 23, 0, 4, 7, 0, -1, -1, '\001', '\0', 'i', '\0', '\0' }, \
{ 1249, {"attcacheoff"}, 23, 0, 4, 8, 0, -1, -1, '\001', '\0', 'i', '\0', '\0' }, \
-{ 1249, {"atttypmod"}, 21, 0, 2, 9, 0, -1, -1, '\001', '\0', 's', '\0', '\0' }, \
+{ 1249, {"atttypmod"}, 21, 0, 4, 9, 0, -1, -1, '\001', '\0', 's', '\0', '\0' }, \
{ 1249, {"attbyval"}, 16, 0, 1, 10, 0, -1, -1, '\001', '\0', 'c', '\0', '\0' }, \
{ 1249, {"attisset"}, 16, 0, 1, 11, 0, -1, -1, '\001', '\0', 'c', '\0', '\0' }, \
{ 1249, {"attalign"}, 18, 0, 1, 12, 0, -1, -1, '\001', '\0', 'c', '\0', '\0' }, \
DATA(insert OID = 0 ( 1249 attnum 21 0 2 6 0 -1 -1 t f s f f));
DATA(insert OID = 0 ( 1249 attnelems 23 0 4 7 0 -1 -1 t f i f f));
DATA(insert OID = 0 ( 1249 attcacheoff 23 0 4 8 0 -1 -1 t f i f f));
-DATA(insert OID = 0 ( 1249 atttypmod 21 0 2 9 0 -1 -1 t f s f f));
+DATA(insert OID = 0 ( 1249 atttypmod 21 0 4 9 0 -1 -1 t f s f f));
DATA(insert OID = 0 ( 1249 attbyval 16 0 1 10 0 -1 -1 t f c f f));
DATA(insert OID = 0 ( 1249 attisset 16 0 1 11 0 -1 -1 t f c f f));
DATA(insert OID = 0 ( 1249 attalign 18 0 1 12 0 -1 -1 t f c f f));
*
* Copyright (c) 1994, Regents of the University of California
*
- * $Id: makefuncs.h,v 1.11 1998/02/26 04:41:56 momjian Exp $
+ * $Id: makefuncs.h,v 1.12 1998/07/12 21:29:31 momjian Exp $
*
*-------------------------------------------------------------------------
*/
makeVar(Index varno,
AttrNumber varattno,
Oid vartype,
- int16 vartypmod,
+ int32 vartypmod,
Index varlevelsup,
Index varnoold,
AttrNumber varoattno);
extern Resdom *
makeResdom(AttrNumber resno,
Oid restype,
- int16 restypmod,
+ int32 restypmod,
char *resname,
Index reskey,
Oid reskeyop,
*
* Copyright (c) 1994, Regents of the University of California
*
- * $Id: parsenodes.h,v 1.49 1998/02/26 04:41:59 momjian Exp $
+ * $Id: parsenodes.h,v 1.50 1998/07/12 21:29:31 momjian Exp $
*
*-------------------------------------------------------------------------
*/
char *name; /* name of the type */
bool timezone; /* timezone specified? */
bool setof; /* is a set? */
- int16 typmod; /* type modifier */
+ int32 typmod; /* type modifier */
List *arrayBounds; /* array bounds */
} TypeName;
*
* Copyright (c) 1994, Regents of the University of California
*
- * $Id: primnodes.h,v 1.21 1998/02/26 04:42:02 momjian Exp $
+ * $Id: primnodes.h,v 1.22 1998/07/12 21:29:33 momjian Exp $
*
*-------------------------------------------------------------------------
*/
NodeTag type;
AttrNumber resno;
Oid restype;
- int16 restypmod;
+ int32 restypmod;
char *resname;
Index reskey;
Oid reskeyop;
Index varno;
AttrNumber varattno;
Oid vartype;
- int16 vartypmod;
+ int32 vartypmod;
Index varlevelsup; /* erased by upper optimizer */
Index varnoold; /* only used by optimizer */
AttrNumber varoattno; /* only used by optimizer */
*
* Copyright (c) 1994, Regents of the University of California
*
- * $Id: parse_expr.h,v 1.8 1998/02/26 04:42:41 momjian Exp $
+ * $Id: parse_expr.h,v 1.9 1998/07/12 21:29:34 momjian Exp $
*
*-------------------------------------------------------------------------
*/
extern Node *transformExpr(ParseState *pstate, Node *expr, int precedence);
extern Node *transformIdent(ParseState *pstate, Node *expr, int precedence);
extern Oid exprType(Node *expr);
-extern Node *parser_typecast2(Node *expr, Oid exprType, Type tp, int16 attypmod);
+extern Node *parser_typecast2(Node *expr, Oid exprType, Type tp, int32 attypmod);
#endif /* PARSE_EXPR_H */
*
* Copyright (c) 1994, Regents of the University of California
*
- * $Id: parse_type.h,v 1.6 1998/02/26 04:42:50 momjian Exp $
+ * $Id: parse_type.h,v 1.7 1998/07/12 21:29:35 momjian Exp $
*
*-------------------------------------------------------------------------
*/
extern bool typeByVal(Type t);
extern char *typeTypeName(Type t);
extern char typeTypeFlag(Type t);
-extern char *stringTypeString(Type tp, char *string, int16 atttypmod);
+extern char *stringTypeString(Type tp, char *string, int32 atttypmod);
extern Oid typeidOutfunc(Oid type_id);
extern Oid typeidTypeRelid(Oid type_id);
extern Oid typeTypeRelid(Type typ);
*
* Copyright (c) 1994, Regents of the University of California
*
- * $Id: array.h,v 1.11 1998/02/26 04:43:45 momjian Exp $
+ * $Id: array.h,v 1.12 1998/07/12 21:29:38 momjian Exp $
*
* NOTES
* XXX the data array should be LONGALIGN'd -- notice that the array
/*
* prototypes for functions defined in arrayfuncs.c
*/
-extern char *array_in(char *string, Oid element_type, int16 typmod);
+extern char *array_in(char *string, Oid element_type, int32 typmod);
extern char *array_out(ArrayType *v, Oid element_type);
extern char *array_dims(ArrayType *v, bool *isNull);
extern Datum
*
* Copyright (c) 1994, Regents of the University of California
*
- * $Id: builtins.h,v 1.45 1998/07/08 14:10:30 thomas Exp $
+ * $Id: builtins.h,v 1.46 1998/07/12 21:29:38 momjian Exp $
*
* NOTES
* This should normally only be included by fmgr.h.
time_t datetime_timestamp(DateTime *datetime);
/* varchar.c */
-extern char *bpcharin(char *s, int dummy, int16 atttypmod);
+extern char *bpcharin(char *s, int dummy, int32 atttypmod);
extern char *bpcharout(char *s);
extern char *bpchar(char *s, int32 slen);
extern char *char_bpchar(int32 c);
extern int32 bpcharoctetlen(char *arg);
extern uint32 hashbpchar(struct varlena * key);
-extern char *varcharin(char *s, int dummy, int16 atttypmod);
+extern char *varcharin(char *s, int dummy, int32 atttypmod);
extern char *varcharout(char *s);
extern char *varchar(char *s, int32 slen);
extern bool varchareq(char *arg1, char *arg2);
*
* Copyright (c) 1994, Regents of the University of California
*
- * $Id: lsyscache.h,v 1.10 1998/02/26 04:44:07 momjian Exp $
+ * $Id: lsyscache.h,v 1.11 1998/07/12 21:29:40 momjian Exp $
*
*-------------------------------------------------------------------------
*/
extern AttrNumber get_attnum(Oid relid, char *attname);
extern Oid get_atttype(Oid relid, AttrNumber attnum);
extern bool get_attisset(Oid relid, char *attname);
-extern int16 get_atttypmod(Oid relid, AttrNumber attnum);
+extern int32 get_atttypmod(Oid relid, AttrNumber attnum);
extern RegProcedure get_opcode(Oid opid);
extern char *get_opname(Oid opid);
extern bool