#include "lclintMacros.nf"#include "basic.h"#include "lcltokentable.h"#include "lclsyntable.h"Go to the source code of this file.
Functions | |
| void | LCLAddSyn (lsymbol ntok, lsymbol otok) |
| ltoken | LCLGetTokenForSyn (lsymbol ntok) |
| bool | LCLIsSyn (lsymbol str) |
| void | LCLSynTableInit (void) |
| void | LCLSynTableReset (void) |
| void | LCLSynTableCleanup (void) |
|
|
Definition at line 53 of file lclsyntable.c. Referenced by LCLProcessInitFileInit(). 00054 {
00055 while (otok >= MaxSyn)
00056 {
00057 /* No more space available. Allocate more. */
00058 AllocSynTable ();
00059 }
00060
00061 llassert (SynTable != NULL);
00062
00063 if (SynTable[ntok] == 0)
00064 {
00065 /* Entry is empty. Fill it in. */
00066 SynTable[ntok] = otok;
00067
00068 /* Mark oldToken as having a synonym. */
00069 LCLSetTokenHasSyn (otok, TRUE);
00070 }
00071 else
00072 {
00073 llbuglit ("LCLAddSyn: invalid argument");
00074 }
00075 }
|
|
|
Definition at line 78 of file lclsyntable.c. Referenced by lsymbol_sortFromType(). 00079 {
00080 llassert (SynTable != NULL);
00081
00082 if (!((ntok < MaxSyn) || (SynTable[ntok] != 0)))
00083 llbuglit ("LCLGetSyn: bad argument");
00084
00085 return LCLGetToken (SynTable[ntok]);
00086 }
|
|
|
Definition at line 89 of file lclsyntable.c. Referenced by LCLScanLine(), and lsymbol_sortFromType(). 00090 {
00091 if (MaxSyn == 0)
00092 {
00093 return FALSE;
00094 }
00095 else
00096 {
00097 llassert (SynTable != NULL);
00098
00099 if (str < MaxSyn)
00100 {
00101 /* Check for synonym entry in table. */
00102 return (SynTable[str] != 0);
00103 }
00104 else
00105 {
00106 /* No token for synonym. Return FALSE. */
00107 return FALSE;
00108 }
00109 }
00110 }
|
|
|
Definition at line 177 of file lclsyntable.c. 00178 {
00179 sfree (SynTable);
00180 SynTable = NULL;
00181 }
|
|
|
Definition at line 166 of file lclsyntable.c. 00167 {
00168 MaxSyn = 0;
00169 }
|
|
|
Definition at line 172 of file lclsyntable.c. 00173 {
00174 }
|
1.2.3 written by Dimitri van Heesch,
© 1997-2000