LLscan either macro or function
This commit is contained in:
parent
1c801f86eb
commit
e67a70cbea
|
@ -10,7 +10,10 @@ extern int LLsymb;
|
|||
#define LL_SAFE(x) /* Nothing */
|
||||
#define LL_SSCANDONE(x) if (LLsymb != x) LLerror(x); else
|
||||
#define LL_SCANDONE(x) if (LLsymb != x) LLerror(x); else
|
||||
#define LL_NOSCANDONE(x) if ((LLsymb = LL_LEXI()) != x) LLerror(x); else
|
||||
#define LL_NOSCANDONE(x) LLscan(x)
|
||||
#ifdef LL_FASTER
|
||||
#define LLscan(x) if ((LLsymb = LL_LEXI()) != x) LLerror(x); else
|
||||
#endif
|
||||
|
||||
# include "Lpars.h"
|
||||
|
||||
|
|
|
@ -20,7 +20,9 @@ static int LLlevel;
|
|||
extern LLread();
|
||||
extern int LLskip();
|
||||
extern int LLnext();
|
||||
#ifndef LLscan
|
||||
extern LLscan();
|
||||
#endif
|
||||
extern LLerror();
|
||||
# ifndef LLNOFIRSTS
|
||||
extern int LLfirst();
|
||||
|
@ -28,6 +30,7 @@ extern int LLfirst();
|
|||
extern LLnewlevel();
|
||||
extern LLoldlevel();
|
||||
|
||||
#ifndef LLscan
|
||||
LLscan(t) {
|
||||
/*
|
||||
* Check if the next symbol is equal to the parameter
|
||||
|
@ -40,6 +43,7 @@ LLscan(t) {
|
|||
*/
|
||||
LLerror(t);
|
||||
}
|
||||
#endif
|
||||
|
||||
LLread() {
|
||||
for (;;) {
|
||||
|
|
Loading…
Reference in a new issue