[BACK]Return to proto.h CVS log [TXT][DIR] Up to [local] / src / usr.bin / awk

Annotation of src/usr.bin/awk/proto.h, Revision 1.2

1.1       tholo       1: /****************************************************************
                      2: Copyright (C) AT&T and Lucent Technologies 1996
                      3: All Rights Reserved
                      4:
                      5: Permission to use, copy, modify, and distribute this software and
                      6: its documentation for any purpose and without fee is hereby
                      7: granted, provided that the above copyright notice appear in all
                      8: copies and that both that the copyright notice and this
                      9: permission notice and warranty disclaimer appear in supporting
                     10: documentation, and that the names of AT&T or Lucent Technologies
                     11: or any of their entities not be used in advertising or publicity
                     12: pertaining to distribution of the software without specific,
                     13: written prior permission.
                     14:
                     15: AT&T AND LUCENT DISCLAIM ALL WARRANTIES WITH REGARD TO THIS
                     16: SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND
                     17: FITNESS. IN NO EVENT SHALL AT&T OR LUCENT OR ANY OF THEIR
                     18: ENTITIES BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL
                     19: DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE,
                     20: DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
                     21: OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE
                     22: USE OR PERFORMANCE OF THIS SOFTWARE.
                     23: ****************************************************************/
                     24:
1.2     ! millert    25: extern int     yywrap(void);
1.1       tholo      26: extern void    setfname(Cell *);
                     27: extern int     constnode(Node *);
                     28: extern char    *strnode(Node *);
                     29: extern Node    *notnull(Node *);
                     30: extern int     yyparse(void);
                     31:
                     32: extern int     yylex(void);
                     33: extern void    startreg(void);
1.2     ! millert    34: extern int     input(void);
        !            35: extern void    unput(int);
1.1       tholo      36: extern void    unputstr(char *);
1.2     ! millert    37: extern int     yylook(void);
        !            38: extern int     yyback(int *, int);
        !            39: extern int     yyinput(void);
1.1       tholo      40:
                     41: extern fa      *makedfa(char *, int);
                     42: extern fa      *mkdfa(char *, int);
                     43: extern int     makeinit(fa *, int);
                     44: extern void    penter(Node *);
                     45: extern void    freetr(Node *);
                     46: extern int     hexstr(char **);
                     47: extern int     quoted(char **);
                     48: extern char    *cclenter(char *);
                     49: extern void    overflo(char *);
                     50: extern void    cfoll(fa *, Node *);
                     51: extern int     first(Node *);
                     52: extern void    follow(Node *);
                     53: extern int     member(int, char *);
                     54: extern int     match(fa *, char *);
                     55: extern int     pmatch(fa *, char *);
                     56: extern int     nematch(fa *, char *);
                     57: extern Node    *reparse(char *);
                     58: extern Node    *regexp(void);
                     59: extern Node    *primary(void);
                     60: extern Node    *concat(Node *);
                     61: extern Node    *alt(Node *);
                     62: extern Node    *unary(Node *);
                     63: extern int     relex(void);
                     64: extern int     cgoto(fa *, int, int);
                     65: extern void    freefa(fa *);
                     66:
                     67: extern int     pgetc(void);
                     68:
                     69: extern Node    *nodealloc(int);
                     70: extern Node    *exptostat(Node *);
                     71: extern Node    *node1(int, Node *);
                     72: extern Node    *node2(int, Node *, Node *);
                     73: extern Node    *node3(int, Node *, Node *, Node *);
                     74: extern Node    *node4(int, Node *, Node *, Node *, Node *);
                     75: extern Node    *stat3(int, Node *, Node *, Node *);
                     76: extern Node    *op2(int, Node *, Node *);
                     77: extern Node    *op1(int, Node *);
                     78: extern Node    *stat1(int, Node *);
                     79: extern Node    *op3(int, Node *, Node *, Node *);
                     80: extern Node    *op4(int, Node *, Node *, Node *, Node *);
                     81: extern Node    *stat2(int, Node *, Node *);
                     82: extern Node    *stat4(int, Node *, Node *, Node *, Node *);
                     83: extern Node    *valtonode(Cell *, int);
                     84: extern Node    *rectonode(void);
                     85: extern Node    *makearr(Node *);
                     86: extern Node    *pa2stat(Node *, Node *, Node *);
                     87: extern Node    *linkum(Node *, Node *);
                     88: extern void    defn(Cell *, Node *, Node *);
                     89: extern int     isarg(char *);
                     90: extern char    *tokname(int);
                     91: extern Cell *(*proctab[])(Node **, int);
                     92:
                     93: extern void    syminit(void);
                     94: extern void    arginit(int, char **);
                     95: extern void    envinit(char **);
                     96: extern Array   *makesymtab(int);
                     97: extern void    freesymtab(Cell *);
                     98: extern void    freeelem(Cell *, char *);
                     99: extern Cell    *setsymtab(char *, char *, double, unsigned int, Array *);
                    100: extern int     hash(char *, int);
                    101: extern void    rehash(Array *);
                    102: extern Cell    *lookup(char *, Array *);
                    103: extern double  setfval(Cell *, double);
                    104: extern void    funnyvar(Cell *, char *);
                    105: extern char    *setsval(Cell *, char *);
                    106: extern double  getfval(Cell *);
                    107: extern char    *getsval(Cell *);
                    108: extern char    *tostring(char *);
                    109: extern char    *qstring(char *, int);
                    110:
                    111: extern void    recinit(unsigned int);
                    112: extern void    initgetrec(void);
                    113: extern int     getrec(char *);
                    114: extern void    nextfile(void);
                    115: extern int     readrec(char *buf, int bufsize, FILE *inf);
                    116: extern char    *getargv(int);
                    117: extern void    setclvar(char *);
                    118: extern void    fldbld(void);
                    119: extern void    cleanfld(int, int);
                    120: extern void    newfld(int);
                    121: extern int     refldbld(char *, char *);
                    122: extern void    recbld(void);
                    123: extern Cell    *fieldadr(int);
                    124: extern void    yyerror(char *);
                    125: extern void    fpecatch(int);
                    126: extern void    bracecheck(void);
                    127: extern void    bcheck2(int, int, int);
                    128: extern void    error(int, char *);
                    129: extern void    eprint(void);
                    130: extern void    bclass(int);
                    131: extern double  errcheck(double, char *);
                    132: extern int     isclvar(char *);
                    133: extern int     isnumber(char *);
                    134:
                    135: extern void    run(Node *);
                    136: extern Cell    *execute(Node *);
                    137: extern Cell    *program(Node **, int);
                    138: extern Cell    *call(Node **, int);
                    139: extern Cell    *copycell(Cell *);
                    140: extern Cell    *arg(Node **, int);
                    141: extern Cell    *jump(Node **, int);
                    142: extern Cell    *getline(Node **, int);
                    143: extern Cell    *getnf(Node **, int);
                    144: extern Cell    *array(Node **, int);
                    145: extern Cell    *adelete(Node **, int);
                    146: extern Cell    *intest(Node **, int);
                    147: extern Cell    *matchop(Node **, int);
                    148: extern Cell    *boolop(Node **, int);
                    149: extern Cell    *relop(Node **, int);
                    150: extern void    tfree(Cell *);
                    151: extern Cell    *gettemp(void);
                    152: extern Cell    *field(Node **, int);
                    153: extern Cell    *indirect(Node **, int);
                    154: extern Cell    *substr(Node **, int);
                    155: extern Cell    *sindex(Node **, int);
                    156: extern int     format(char *, int, char *, Node *);
                    157: extern Cell    *awksprintf(Node **, int);
                    158: extern Cell    *awkprintf(Node **, int);
                    159: extern Cell    *arith(Node **, int);
                    160: extern double  ipow(double, int);
                    161: extern Cell    *incrdecr(Node **, int);
                    162: extern Cell    *assign(Node **, int);
                    163: extern Cell    *cat(Node **, int);
                    164: extern Cell    *pastat(Node **, int);
                    165: extern Cell    *dopa2(Node **, int);
                    166: extern Cell    *split(Node **, int);
                    167: extern Cell    *condexpr(Node **, int);
                    168: extern Cell    *ifstat(Node **, int);
                    169: extern Cell    *whilestat(Node **, int);
                    170: extern Cell    *dostat(Node **, int);
                    171: extern Cell    *forstat(Node **, int);
                    172: extern Cell    *instat(Node **, int);
                    173: extern Cell    *bltin(Node **, int);
                    174: extern Cell    *printstat(Node **, int);
                    175: extern Cell    *nullproc(Node **, int);
                    176: extern FILE    *redirect(int, Node *);
                    177: extern FILE    *openfile(int, char *);
                    178: extern char    *filename(FILE *);
                    179: extern Cell    *closefile(Node **, int);
                    180: extern void    closeall(void);
                    181: extern Cell    *sub(Node **, int);
                    182: extern Cell    *gsub(Node **, int);
                    183:
                    184: extern FILE    *popen(const char *, const char *);
                    185: extern int     pclose(FILE *);