Annotation of 42BSD/usr.lib/libln/reject.c, revision 1.1.1.1

1.1       root        1: /*     @(#)reject.c    4.1     12/25/82        */
                      2: 
                      3: # include <stdio.h>
                      4: extern struct {int *yyaa, *yybb; int *yystops;} *yylstate [], **yylsp, **yyolsp;
                      5: yyreject ()
                      6: {
                      7: extern FILE *yyout, *yyin;
                      8: extern int yyprevious , *yyfnd;
                      9: extern char yyextra[];
                     10: extern char yytext[];
                     11: extern int yyleng;
                     12: for( ; yylsp < yyolsp; yylsp++)
                     13:        yytext[yyleng++] = yyinput();
                     14: if (*yyfnd > 0)
                     15:        return(yyracc(*yyfnd++));
                     16: while (yylsp-- > yylstate)
                     17:        {
                     18:        yyunput(yytext[yyleng-1]);
                     19:        yytext[--yyleng] = 0;
                     20:        if (*yylsp != 0 && (yyfnd= (*yylsp)->yystops) && *yyfnd > 0)
                     21:                return(yyracc(*yyfnd++));
                     22:        }
                     23: if (yytext[0] == 0)
                     24:        return(0);
                     25: yyoutput(yyprevious = yyinput());
                     26: yyleng=0;
                     27: return(-1);
                     28: }
                     29: yyracc(m)
                     30: {
                     31: yyolsp = yylsp;
                     32: if (yyextra[m])
                     33:        {
                     34:        while (yyback((*yylsp)->yystops, -m) != 1 && yylsp>yylstate)
                     35:                {
                     36:                yylsp--;
                     37:                yyunput(yytext[--yyleng]);
                     38:                }
                     39:        }
                     40: yyprevious = yytext[yyleng-1];
                     41: yytext[yyleng] = 0;
                     42: return(m);
                     43: }

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.