X-Git-Url: https://git.saurik.com/bison.git/blobdiff_plain/a99ec53eb1f3b85c1419a1624e360ada377af9ee..70b7c357476ed3525ddb5d2739e70690cfebb207:/src/uniqstr.h?ds=sidebyside diff --git a/src/uniqstr.h b/src/uniqstr.h index a23c77fd..143f7aae 100644 --- a/src/uniqstr.h +++ b/src/uniqstr.h @@ -1,6 +1,6 @@ /* Keeping a unique copy of strings. - Copyright (C) 2002-2003, 2008-2012 Free Software Foundation, Inc. + Copyright (C) 2002-2003, 2008-2013 Free Software Foundation, Inc. This file is part of Bison, the GNU Compiler Compiler. @@ -36,28 +36,15 @@ uniqstr uniqstr_vsprintf (char const *format, ...) __attribute__ ((__format__ (__printf__, 1, 2))); /* Two uniqstr values have the same value iff they are the same. */ -# define UNIQSTR_EQ(USTR1, USTR2) (!!((USTR1) == (USTR2))) +# define UNIQSTR_EQ(Ustr1, Ustr2) (!!((Ustr1) == (Ustr2))) /* Compare two uniqstr a la strcmp: negative for <, nul for =, and positive for >. Undefined order, relies on addresses. */ -# define UNIQSTR_CMP(USTR1, USTR2) ((USTR1) - (USTR2)) - -/*--------------------------------------. -| Initializing, destroying, debugging. | -`--------------------------------------*/ - -/* Create the string table. */ -void uniqstrs_new (void); +int uniqstr_cmp(uniqstr u1, uniqstr u2); /* Die if STR is not a uniqstr. */ void uniqstr_assert (char const *str); -/* Free all the memory allocated for symbols. */ -void uniqstrs_free (void); - -/* Report them all. */ -void uniqstrs_print (void); - /*----------------. | Concatenation. | `----------------*/ @@ -95,4 +82,17 @@ void uniqstrs_print (void); F1 F2 F3 F4 F5 F6 F7 F8 F9 F10 \ F11 F12 F13 F14 F15 F16 F17 F18 F19 F20 +/*--------------------. +| Table of uniqstrs. | +`--------------------*/ + +/* Create the string table. */ +void uniqstrs_new (void); + +/* Free all the memory allocated for symbols. */ +void uniqstrs_free (void); + +/* Report them all. */ +void uniqstrs_print (void); + #endif /* ! defined UNIQSTR_H_ */