mirror of
https://git.postgresql.org/git/postgresql.git
synced 2024-09-28 14:11:48 +02:00
Define text, varchar, and bpchar string length functions.
This commit is contained in:
parent
6873af55cf
commit
6316f4d3db
@ -7,7 +7,7 @@
|
|||||||
*
|
*
|
||||||
*
|
*
|
||||||
* IDENTIFICATION
|
* IDENTIFICATION
|
||||||
* $Header: /cvsroot/pgsql/src/backend/utils/adt/varchar.c,v 1.12 1997/12/06 22:57:14 momjian Exp $
|
* $Header: /cvsroot/pgsql/src/backend/utils/adt/varchar.c,v 1.13 1997/12/16 15:59:09 thomas Exp $
|
||||||
*
|
*
|
||||||
*-------------------------------------------------------------------------
|
*-------------------------------------------------------------------------
|
||||||
*/
|
*/
|
||||||
@ -191,6 +191,15 @@ bcTruelen(char *arg)
|
|||||||
return (i + 1);
|
return (i + 1);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
int32
|
||||||
|
bpcharlen(char *arg)
|
||||||
|
{
|
||||||
|
if (!PointerIsValid(arg))
|
||||||
|
elog(WARN, "Bad (null) char() external representation", NULL);
|
||||||
|
|
||||||
|
return(bcTruelen(arg));
|
||||||
|
} /* bpcharlen() */
|
||||||
|
|
||||||
bool
|
bool
|
||||||
bpchareq(char *arg1, char *arg2)
|
bpchareq(char *arg1, char *arg2)
|
||||||
{
|
{
|
||||||
@ -338,6 +347,15 @@ vcTruelen(char *arg)
|
|||||||
return i;
|
return i;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
int32
|
||||||
|
varcharlen(char *arg)
|
||||||
|
{
|
||||||
|
if (!PointerIsValid(arg))
|
||||||
|
elog(WARN, "Bad (null) varchar() external representation", NULL);
|
||||||
|
|
||||||
|
return(vcTruelen(arg));
|
||||||
|
} /* vclen() */
|
||||||
|
|
||||||
bool
|
bool
|
||||||
varchareq(char *arg1, char *arg2)
|
varchareq(char *arg1, char *arg2)
|
||||||
{
|
{
|
||||||
|
@ -7,7 +7,7 @@
|
|||||||
*
|
*
|
||||||
*
|
*
|
||||||
* IDENTIFICATION
|
* IDENTIFICATION
|
||||||
* $Header: /cvsroot/pgsql/src/backend/utils/adt/varlena.c,v 1.24 1997/12/08 04:42:48 momjian Exp $
|
* $Header: /cvsroot/pgsql/src/backend/utils/adt/varlena.c,v 1.25 1997/12/16 15:59:11 thomas Exp $
|
||||||
*
|
*
|
||||||
*-------------------------------------------------------------------------
|
*-------------------------------------------------------------------------
|
||||||
*/
|
*/
|
||||||
@ -210,20 +210,14 @@ textout(struct varlena * vlena)
|
|||||||
* returns the actual length of a text* (which may be less than
|
* returns the actual length of a text* (which may be less than
|
||||||
* the VARSIZE of the text*)
|
* the VARSIZE of the text*)
|
||||||
*/
|
*/
|
||||||
#ifdef NOT_USED
|
|
||||||
int
|
int
|
||||||
textlen(text *t)
|
textlen(text *t)
|
||||||
{
|
{
|
||||||
int i = 0;
|
if (!PointerIsValid(t))
|
||||||
int max = VARSIZE(t) - VARHDRSZ;
|
elog(WARN,"Null input to textlen");
|
||||||
char *ptr = VARDATA(t);
|
|
||||||
|
|
||||||
while (i < max && *ptr++)
|
return (VARSIZE(t) - VARHDRSZ);
|
||||||
i++;
|
} /* textlen() */
|
||||||
return i;
|
|
||||||
}
|
|
||||||
|
|
||||||
#endif
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* textcat -
|
* textcat -
|
||||||
|
Loading…
Reference in New Issue
Block a user