mirror of
https://github.com/postgres/postgres.git
synced 2025-06-26 12:21:12 +03:00
This adds unary plus capability. No grammar changes, per Tom's request.
Marko Kreen
This commit is contained in:
@ -8,7 +8,7 @@
|
||||
*
|
||||
*
|
||||
* IDENTIFICATION
|
||||
* $Header: /cvsroot/pgsql/src/backend/commands/Attic/command.c,v 1.131 2001/05/30 13:00:03 momjian Exp $
|
||||
* $Header: /cvsroot/pgsql/src/backend/commands/Attic/command.c,v 1.132 2001/06/07 00:09:28 momjian Exp $
|
||||
*
|
||||
* NOTES
|
||||
* The PerformAddAttribute() code, like most of the relation
|
||||
@ -176,6 +176,12 @@ PerformPortalFetch(char *name,
|
||||
if (!portal->atEnd)
|
||||
{
|
||||
ExecutorRun(queryDesc, estate, EXEC_FOR, (long) count);
|
||||
/*
|
||||
* I use CMD_UPDATE, because no CMD_MOVE or the like
|
||||
* exists, and I would like to provide the same
|
||||
* kind of info as CMD_UPDATE
|
||||
*/
|
||||
UpdateCommandInfo(CMD_UPDATE, 0, estate->es_processed);
|
||||
if (estate->es_processed > 0)
|
||||
portal->atStart = false; /* OK to back up now */
|
||||
if (count <= 0 || (int) estate->es_processed < count)
|
||||
@ -187,6 +193,12 @@ PerformPortalFetch(char *name,
|
||||
if (!portal->atStart)
|
||||
{
|
||||
ExecutorRun(queryDesc, estate, EXEC_BACK, (long) count);
|
||||
/*
|
||||
* I use CMD_UPDATE, because no CMD_MOVE or the like
|
||||
* exists, and I would like to provide the same
|
||||
* kind of info as CMD_UPDATE
|
||||
*/
|
||||
UpdateCommandInfo(CMD_UPDATE, 0, estate->es_processed);
|
||||
if (estate->es_processed > 0)
|
||||
portal->atEnd = false; /* OK to go forward now */
|
||||
if (count <= 0 || (int) estate->es_processed < count)
|
||||
|
@ -8,16 +8,16 @@
|
||||
*
|
||||
*
|
||||
* IDENTIFICATION
|
||||
* $Header: /cvsroot/pgsql/src/backend/utils/adt/float.c,v 1.73 2001/06/02 20:18:30 tgl Exp $
|
||||
* $Header: /cvsroot/pgsql/src/backend/utils/adt/float.c,v 1.74 2001/06/07 00:09:29 momjian Exp $
|
||||
*
|
||||
*-------------------------------------------------------------------------
|
||||
*/
|
||||
/*----------
|
||||
* OLD COMMENTS
|
||||
* Basic float4 ops:
|
||||
* float4in, float4out, float4abs, float4um
|
||||
* float4in, float4out, float4abs, float4um, float4up
|
||||
* Basic float8 ops:
|
||||
* float8in, float8out, float8abs, float8um
|
||||
* float8in, float8out, float8abs, float8um, float8up
|
||||
* Arithmetic operators:
|
||||
* float4pl, float4mi, float4mul, float4div
|
||||
* float8pl, float8mi, float8mul, float8div
|
||||
@ -340,6 +340,13 @@ float4um(PG_FUNCTION_ARGS)
|
||||
PG_RETURN_FLOAT4((float4) -arg1);
|
||||
}
|
||||
|
||||
Datum
|
||||
float4up(PG_FUNCTION_ARGS)
|
||||
{
|
||||
float4 arg = PG_GETARG_FLOAT4(0);
|
||||
PG_RETURN_FLOAT4(arg);
|
||||
}
|
||||
|
||||
Datum
|
||||
float4larger(PG_FUNCTION_ARGS)
|
||||
{
|
||||
@ -399,6 +406,13 @@ float8um(PG_FUNCTION_ARGS)
|
||||
PG_RETURN_FLOAT8(result);
|
||||
}
|
||||
|
||||
Datum
|
||||
float8up(PG_FUNCTION_ARGS)
|
||||
{
|
||||
float8 arg = PG_GETARG_FLOAT8(0);
|
||||
PG_RETURN_FLOAT8(arg);
|
||||
}
|
||||
|
||||
Datum
|
||||
float8larger(PG_FUNCTION_ARGS)
|
||||
{
|
||||
|
@ -8,7 +8,7 @@
|
||||
*
|
||||
*
|
||||
* IDENTIFICATION
|
||||
* $Header: /cvsroot/pgsql/src/backend/utils/adt/int.c,v 1.46 2001/03/22 03:59:51 momjian Exp $
|
||||
* $Header: /cvsroot/pgsql/src/backend/utils/adt/int.c,v 1.47 2001/06/07 00:09:29 momjian Exp $
|
||||
*
|
||||
*-------------------------------------------------------------------------
|
||||
*/
|
||||
@ -563,6 +563,14 @@ int4um(PG_FUNCTION_ARGS)
|
||||
PG_RETURN_INT32(-arg);
|
||||
}
|
||||
|
||||
Datum
|
||||
int4up(PG_FUNCTION_ARGS)
|
||||
{
|
||||
int32 arg = PG_GETARG_INT32(0);
|
||||
|
||||
PG_RETURN_INT32(arg);
|
||||
}
|
||||
|
||||
Datum
|
||||
int4pl(PG_FUNCTION_ARGS)
|
||||
{
|
||||
@ -615,6 +623,14 @@ int2um(PG_FUNCTION_ARGS)
|
||||
PG_RETURN_INT16(-arg);
|
||||
}
|
||||
|
||||
Datum
|
||||
int2up(PG_FUNCTION_ARGS)
|
||||
{
|
||||
int16 arg = PG_GETARG_INT16(0);
|
||||
|
||||
PG_RETURN_INT16(arg);
|
||||
}
|
||||
|
||||
Datum
|
||||
int2pl(PG_FUNCTION_ARGS)
|
||||
{
|
||||
|
@ -7,7 +7,7 @@
|
||||
* Portions Copyright (c) 1994, Regents of the University of California
|
||||
*
|
||||
* IDENTIFICATION
|
||||
* $Header: /cvsroot/pgsql/src/backend/utils/adt/int8.c,v 1.29 2001/03/22 03:59:51 momjian Exp $
|
||||
* $Header: /cvsroot/pgsql/src/backend/utils/adt/int8.c,v 1.30 2001/06/07 00:09:29 momjian Exp $
|
||||
*
|
||||
*-------------------------------------------------------------------------
|
||||
*/
|
||||
@ -412,6 +412,14 @@ int8um(PG_FUNCTION_ARGS)
|
||||
PG_RETURN_INT64(-val);
|
||||
}
|
||||
|
||||
Datum
|
||||
int8up(PG_FUNCTION_ARGS)
|
||||
{
|
||||
int64 val = PG_GETARG_INT64(0);
|
||||
|
||||
PG_RETURN_INT64(val);
|
||||
}
|
||||
|
||||
Datum
|
||||
int8pl(PG_FUNCTION_ARGS)
|
||||
{
|
||||
|
@ -5,7 +5,7 @@
|
||||
*
|
||||
* 1998 Jan Wieck
|
||||
*
|
||||
* $Header: /cvsroot/pgsql/src/backend/utils/adt/numeric.c,v 1.41 2001/05/03 19:00:36 tgl Exp $
|
||||
* $Header: /cvsroot/pgsql/src/backend/utils/adt/numeric.c,v 1.42 2001/06/07 00:09:29 momjian Exp $
|
||||
*
|
||||
* ----------
|
||||
*/
|
||||
@ -405,6 +405,19 @@ numeric_uminus(PG_FUNCTION_ARGS)
|
||||
}
|
||||
|
||||
|
||||
Datum
|
||||
numeric_uplus(PG_FUNCTION_ARGS)
|
||||
{
|
||||
Numeric num = PG_GETARG_NUMERIC(0);
|
||||
Numeric res;
|
||||
|
||||
res = (Numeric) palloc(num->varlen);
|
||||
memcpy(res, num, num->varlen);
|
||||
|
||||
PG_RETURN_NUMERIC(res);
|
||||
}
|
||||
|
||||
|
||||
Datum
|
||||
numeric_sign(PG_FUNCTION_ARGS)
|
||||
{
|
||||
|
Reference in New Issue
Block a user