Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commit8f12541

Browse files
committed
Cleanup of varchar.
1 parent84ef6aa commit8f12541

File tree

1 file changed

+18
-33
lines changed

1 file changed

+18
-33
lines changed

‎src/backend/utils/adt/varchar.c

Lines changed: 18 additions & 33 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@
77
*
88
*
99
* IDENTIFICATION
10-
* $Header: /cvsroot/pgsql/src/backend/utils/adt/varchar.c,v 1.22 1998/01/0804:58:19 momjian Exp $
10+
* $Header: /cvsroot/pgsql/src/backend/utils/adt/varchar.c,v 1.23 1998/01/0806:18:18 momjian Exp $
1111
*
1212
*-------------------------------------------------------------------------
1313
*/
@@ -327,29 +327,13 @@ bpcharcmp(char *arg1, char *arg2)
327327
*Comparison Functions used for varchar
328328
*****************************************************************************/
329329

330-
staticint
331-
vcTruelen(char*arg)
332-
{
333-
char*s=VARDATA(arg);
334-
inti;
335-
intlen;
336-
337-
len=VARSIZE(arg)-VARHDRSZ;
338-
for (i=0;i<len;i++)
339-
{
340-
if (*s++=='\0')
341-
break;
342-
}
343-
returni;
344-
}
345-
346330
int32
347331
varcharlen(char*arg)
348332
{
349333
if (!PointerIsValid(arg))
350334
elog(ERROR,"Bad (null) varchar() external representation",NULL);
351335

352-
return(vcTruelen(arg));
336+
return(VARSIZE(arg)-VARHDRSZ);
353337
}
354338

355339
bool
@@ -360,8 +344,9 @@ varchareq(char *arg1, char *arg2)
360344

361345
if (arg1==NULL||arg2==NULL)
362346
return ((bool)0);
363-
len1=vcTruelen(arg1);
364-
len2=vcTruelen(arg2);
347+
348+
len1=VARSIZE(arg1)-VARHDRSZ;
349+
len2=VARSIZE(arg2)-VARHDRSZ;
365350

366351
if (len1!=len2)
367352
return0;
@@ -377,8 +362,8 @@ varcharne(char *arg1, char *arg2)
377362

378363
if (arg1==NULL||arg2==NULL)
379364
return ((bool)0);
380-
len1=vcTruelen(arg1);
381-
len2=vcTruelen(arg2);
365+
len1=VARSIZE(arg1)-VARHDRSZ;
366+
len2=VARSIZE(arg2)-VARHDRSZ;
382367

383368
if (len1!=len2)
384369
return1;
@@ -395,8 +380,8 @@ varcharlt(char *arg1, char *arg2)
395380

396381
if (arg1==NULL||arg2==NULL)
397382
return ((bool)0);
398-
len1=vcTruelen(arg1);
399-
len2=vcTruelen(arg2);
383+
len1=VARSIZE(arg1)-VARHDRSZ;
384+
len2=VARSIZE(arg2)-VARHDRSZ;
400385

401386
cmp=strncmp(VARDATA(arg1),VARDATA(arg2),Min(len1,len2));
402387
if (cmp==0)
@@ -414,8 +399,8 @@ varcharle(char *arg1, char *arg2)
414399

415400
if (arg1==NULL||arg2==NULL)
416401
return ((bool)0);
417-
len1=vcTruelen(arg1);
418-
len2=vcTruelen(arg2);
402+
len1=VARSIZE(arg1)-VARHDRSZ;
403+
len2=VARSIZE(arg2)-VARHDRSZ;
419404

420405
cmp=strncmp(VARDATA(arg1),VARDATA(arg2),Min(len1,len2));
421406
if (0==cmp)
@@ -433,8 +418,8 @@ varchargt(char *arg1, char *arg2)
433418

434419
if (arg1==NULL||arg2==NULL)
435420
return ((bool)0);
436-
len1=vcTruelen(arg1);
437-
len2=vcTruelen(arg2);
421+
len1=VARSIZE(arg1)-VARHDRSZ;
422+
len2=VARSIZE(arg2)-VARHDRSZ;
438423

439424
cmp=strncmp(VARDATA(arg1),VARDATA(arg2),Min(len1,len2));
440425
if (cmp==0)
@@ -452,8 +437,8 @@ varcharge(char *arg1, char *arg2)
452437

453438
if (arg1==NULL||arg2==NULL)
454439
return ((bool)0);
455-
len1=vcTruelen(arg1);
456-
len2=vcTruelen(arg2);
440+
len1=VARSIZE(arg1)-VARHDRSZ;
441+
len2=VARSIZE(arg2)-VARHDRSZ;
457442

458443
cmp=strncmp(VARDATA(arg1),VARDATA(arg2),Min(len1,len2));
459444
if (0==cmp)
@@ -470,8 +455,8 @@ varcharcmp(char *arg1, char *arg2)
470455
len2;
471456
intcmp;
472457

473-
len1=vcTruelen(arg1);
474-
len2=vcTruelen(arg2);
458+
len1=VARSIZE(arg1)-VARHDRSZ;
459+
len2=VARSIZE(arg2)-VARHDRSZ;
475460
cmp= (strncmp(VARDATA(arg1),VARDATA(arg2),Min(len1,len2)));
476461
if ((0==cmp)&& (len1!=len2))
477462
return (int32) (len1<len2 ?-1 :1);
@@ -536,7 +521,7 @@ hashvarchar(struct varlena * key)
536521
intloop;
537522

538523
keydata=VARDATA(key);
539-
keylen=vcTruelen((char*)key);
524+
keylen=VARSIZE(key)-VARHDRSZ;
540525

541526
#defineHASHCn = *keydata++ + 65599 * n
542527

0 commit comments

Comments
 (0)

[8]ページ先頭

©2009-2025 Movatter.jp