1 /***********************************************************************
2 * *
3 * This software is part of the ast package *
4 * Copyright (c) 2003-2011 AT&T Intellectual Property *
5 * and is licensed under the *
6 * Eclipse Public License, Version 1.0 *
7 * by AT&T Intellectual Property *
8 * *
9 * A copy of the License is available at *
10 * http://www.eclipse.org/org/documents/epl-v10.html *
11 * (with md5 checksum b35adb5213ca9657e911e9befb180842) *
12 * *
13 * Information and Software Systems Research *
14 * AT&T Research *
15 * Florham Park NJ *
16 * *
17 * Glenn Fowler <gsf@research.att.com> *
18 * David Korn <dgk@research.att.com> *
19 * Phong Vo <kpv@research.att.com> *
20 * *
21 ***********************************************************************/
22 #pragma prototyped
23
24 /*
25 * codex method name comparison
26 * strcmp() semantics
27 */
28
29 #include <codex.h>
30
31 int
codexcmp(register const char * s,register const char * t)32 codexcmp(register const char* s, register const char* t)
33 {
34 for (;;)
35 {
36 if (!*s)
37 {
38 if (!*t || *t == '-' || *t == '+' || *t == '<' || *t == '>' || *t == '|' || *t == '^')
39 return 0;
40 break;
41 }
42 if (!*t)
43 {
44 if (*s == '-' || *s == '+' || *s == '<' || *s == '>' || *s == '|' || *s == '^')
45 return 0;
46 break;
47 }
48 if (*s != *t)
49 break;
50 s++;
51 t++;
52 }
53 return *((unsigned char*)s) - *((unsigned char*)t);
54 }
55