#include <stdlib.h>#include <string.h>#include <unistd.h>#include <fcntl.h>Go to the source code of this file.
Classes | |
| struct | op |
| struct | brkcon |
| struct | ioword |
| struct | env |
| struct | var |
| struct | iobuf |
| struct | ioarg |
| struct | io |
| struct | wdblock |
Defines | |
| #define | _VOID |
| #define | LINELIM 4096 |
| #define | NPUSH 8 |
| #define | NOFILE 20 |
| #define | NUFILE 10 |
| #define | FDBASE 10 |
| #define | WAITSIG(s) ((s)&0177) |
| #define | WAITVAL(s) (((s)>>8)&0377) |
| #define | WAITCORE(s) (((s)&0200)!=0) |
| #define | QUOTE 0200 |
| #define | NOBLOCK ((struct op *)NULL) |
| #define | NOWORD ((char *)NULL) |
| #define | NOWORDS ((char **)NULL) |
| #define | NOPIPE ((int *)NULL) |
| #define | TCOM 1 |
| #define | TPAREN 2 |
| #define | TPIPE 3 |
| #define | TLIST 4 |
| #define | TOR 5 |
| #define | TAND 6 |
| #define | TFOR 7 |
| #define | TDO 8 |
| #define | TCASE 9 |
| #define | TIF 10 |
| #define | TWHILE 11 |
| #define | TUNTIL 12 |
| #define | TELIF 13 |
| #define | TPAT 14 |
| #define | TBRACE 15 |
| #define | TASYNC 16 |
| #define | BIT(i) (1<<(i)) |
| #define | FEXEC BIT(0) |
| #define | DOSUB 1 |
| #define | DOBLANK 2 |
| #define | DOGLOB 4 |
| #define | DOKEY 8 |
| #define | DOTRIM 16 |
| #define | DOALL (DOSUB|DOBLANK|DOGLOB|DOKEY|DOTRIM) |
| #define | IOREAD 1 |
| #define | IOHERE 2 |
| #define | IOWRITE 4 |
| #define | IOCAT 8 |
| #define | IOXHERE 16 |
| #define | IODUP 32 |
| #define | IOCLOSE 64 |
| #define | IODEFAULT (-1) |
| #define | COPYV 1 |
| #define | RONLY 01 |
| #define | EXPORT 02 |
| #define | GETCELL 04 |
| #define | AFID_NOBUF (~0) |
| #define | AFID_ID 0 |
| #define | XOTHER 0 |
| #define | XDOLL 1 |
| #define | XGRAVE 2 |
| #define | XIO 3 |
| #define | INSUB() (e.iop->task == XGRAVE || e.iop->task == XDOLL) |
| #define | PUSHIO(what, arg, gen) ((temparg.what = (arg)),pushio(&temparg,(gen))) |
| #define | RUN(what, arg, gen) ((temparg.what = (arg)), run(&temparg,(gen))) |
| #define | WORD_H 1 |
| #define | NEW(type) (type *)getcell(sizeof(type)) |
| #define | DELETE(obj) freecell((char *)obj) |
Typedefs | |
| typedef char * | xint |
Functions | |
| int(*)() | inbuilt () |
| _PROTOTYPE (char *rexecve,(char *c, char **v, char **envp)) | |
| _PROTOTYPE (char *space,(int n)) | |
| _PROTOTYPE (char *strsave,(char *s, int a)) | |
| _PROTOTYPE (char *evalstr,(char *cp, int f)) | |
| _PROTOTYPE (char *itoa,(unsigned u, int n)) | |
| _PROTOTYPE (char *unquote,(char *as)) | |
| _PROTOTYPE (struct var *lookup,(char *n)) | |
| _PROTOTYPE (int rlookup,(char *n)) | |
| _PROTOTYPE (struct wdblock *glob,(char *cp, struct wdblock *wb)) | |
| _PROTOTYPE (int subgetc,(int ec, int quoted)) | |
| _PROTOTYPE (char **makenv,(void)) | |
| _PROTOTYPE (char **eval,(char **ap, int f)) | |
| _PROTOTYPE (int setstatus,(int s)) | |
| _PROTOTYPE (int waitfor,(int lastpid, int canintr)) | |
| _PROTOTYPE (void onintr,(int s)) | |
| _PROTOTYPE (int newenv,(int f)) | |
| _PROTOTYPE (void quitenv,(void)) | |
| _PROTOTYPE (void err,(char *s)) | |
| _PROTOTYPE (int anys,(char *s1, char *s2)) | |
| _PROTOTYPE (int any,(int c, char *s)) | |
| _PROTOTYPE (void next,(int f)) | |
| _PROTOTYPE (void runtrap,(int i)) | |
| _PROTOTYPE (int letter,(int c)) | |
| _PROTOTYPE (int gmatch,(char *s, char *p)) | |
| _PROTOTYPE (int yyparse,(void)) | |
| _PROTOTYPE (void setval,(struct var *vp, char *val)) | |
| _PROTOTYPE (void nameval,(struct var *vp, char *val, char *name)) | |
| _PROTOTYPE (void export,(struct var *vp)) | |
| _PROTOTYPE (int isassign,(char *s)) | |
| _PROTOTYPE (int checkname,(char *cp)) | |
| _PROTOTYPE (int assign,(char *s, int cf)) | |
| _PROTOTYPE (void putvlist,(int f, int out)) | |
| _PROTOTYPE (int eqname,(char *n1, char *n2)) | |
| _PROTOTYPE (int execute,(struct op *t, int *pin, int *pout, int act)) | |
| _PROTOTYPE (int nlchar,(struct ioarg *ap)) | |
| _PROTOTYPE (int gravechar,(struct ioarg *ap, struct io *iop)) | |
| _PROTOTYPE (void freehere,(int area)) | |
| _PROTOTYPE (void markhere,(char *s, struct ioword *iop)) | |
| _PROTOTYPE (int herein,(char *hname, int xdoll)) | |
| _PROTOTYPE (int run,(struct ioarg *argp, int(*f)(_VOID))) | |
| _PROTOTYPE (int getc,(int ec)) | |
| _PROTOTYPE (void unget,(int c)) | |
| _PROTOTYPE (void prn,(unsigned u)) | |
| _PROTOTYPE (void pushio,(struct ioarg *argp, int(*fn)(_VOID))) | |
| _PROTOTYPE (int remap,(int fd)) | |
| _PROTOTYPE (int openpipe,(int *pv)) | |
| _PROTOTYPE (void closepipe,(int *pv)) | |
| _PROTOTYPE (struct io *setbase,(struct io *ip)) | |
| _PROTOTYPE (struct wdblock *addword,(char *wd, struct wdblock *wb)) | |
| _PROTOTYPE (struct wdblock *newword,(int nw)) | |
| _PROTOTYPE (char **getwords,(struct wdblock *wb)) | |
| _PROTOTYPE (char *getcell,(unsigned nbytes)) | |
| _PROTOTYPE (void setarea,(char *cp, int a)) | |
| _PROTOTYPE (void freearea,(int a)) | |
| _PROTOTYPE (void freecell,(char *cp)) | |
Variables | |
| Extern char ** | dolv |
| Extern int | dolc |
| Extern int | exstat |
| Extern char | gflg |
| Extern int | talking |
| Extern int | execflg |
| Extern int | multiline |
| Extern struct op * | outtree |
| Extern xint * | failpt |
| Extern xint * | errpt |
| Extern struct brkcon * | brklist |
| Extern int | isbreak |
| Extern struct wdblock * | wdlist |
| Extern struct wdblock * | iolist |
| struct env | e |
| char * | flag |
| char * | null |
| int | intr |
| Extern char * | trap [_NSIG+1] |
| Extern char | ourtrap [_NSIG+1] |
| Extern int | trapset |
| int | heedint |
| Extern int | yynerrs |
| Extern char | line [LINELIM] |
| char * | elinep |
| Extern struct var * | vlist |
| Extern struct var * | homedir |
| Extern struct var * | prompt |
| Extern struct var * | cprompt |
| Extern struct var * | path |
| Extern struct var * | shell |
| Extern struct var * | ifs |
| Extern struct ioarg | ioargstack [NPUSH] |
| Extern struct io | iostack [NPUSH] |
| struct ioarg | temparg |
| Extern int | areanum |
| #define INSUB | ( | ) | (e.iop->task == XGRAVE || e.iop->task == XDOLL) |
| _PROTOTYPE | ( | void | freecell, | |
| (char *cp) | ||||
| ) |
| _PROTOTYPE | ( | void | freearea, | |
| (int a) | ||||
| ) |
| _PROTOTYPE | ( | char * | getcell, | |
| (unsigned nbytes) | ||||
| ) |
| _PROTOTYPE | ( | char ** | getwords, | |
| (struct wdblock *wb) | ||||
| ) |
| _PROTOTYPE | ( | struct wdblock * | newword, | |
| (int nw) | ||||
| ) |
| _PROTOTYPE | ( | void | closepipe, | |
| (int *pv) | ||||
| ) |
| _PROTOTYPE | ( | int | openpipe, | |
| (int *pv) | ||||
| ) |
| _PROTOTYPE | ( | int | remap, | |
| (int fd) | ||||
| ) |
| _PROTOTYPE | ( | void | prn, | |
| (unsigned u) | ||||
| ) |
| _PROTOTYPE | ( | void | unget, | |
| (int c) | ||||
| ) |
| _PROTOTYPE | ( | int | getc, | |
| (int ec) | ||||
| ) |
| _PROTOTYPE | ( | int | herein, | |
| (char *hname, int xdoll) | ||||
| ) |
| _PROTOTYPE | ( | void | freehere, | |
| (int area) | ||||
| ) |
| _PROTOTYPE | ( | int | nlchar, | |
| (struct ioarg *ap) | ||||
| ) |
| _PROTOTYPE | ( | int | eqname, | |
| (char *n1, char *n2) | ||||
| ) |
| _PROTOTYPE | ( | void | putvlist, | |
| (int f, int out) | ||||
| ) |
| _PROTOTYPE | ( | int | assign, | |
| (char *s, int cf) | ||||
| ) |
| _PROTOTYPE | ( | int | checkname, | |
| (char *cp) | ||||
| ) |
| _PROTOTYPE | ( | int | isassign, | |
| (char *s) | ||||
| ) |
| _PROTOTYPE | ( | void | export, | |
| (struct var *vp) | ||||
| ) |
| _PROTOTYPE | ( | int | yyparse, | |
| (void) | ||||
| ) |
| _PROTOTYPE | ( | int | letter, | |
| (int c) | ||||
| ) |
| _PROTOTYPE | ( | void | runtrap, | |
| (int i) | ||||
| ) |
| _PROTOTYPE | ( | void | next, | |
| (int f) | ||||
| ) |
| _PROTOTYPE | ( | int | anys, | |
| (char *s1, char *s2) | ||||
| ) |
| _PROTOTYPE | ( | void | err, | |
| (char *s) | ||||
| ) |
| _PROTOTYPE | ( | void | quitenv, | |
| (void) | ||||
| ) |
| _PROTOTYPE | ( | int | newenv, | |
| (int f) | ||||
| ) |
| _PROTOTYPE | ( | void | onintr, | |
| (int s) | ||||
| ) |
| _PROTOTYPE | ( | int | waitfor, | |
| (int lastpid, int canintr) | ||||
| ) |
| _PROTOTYPE | ( | int | setstatus, | |
| (int s) | ||||
| ) |
| _PROTOTYPE | ( | char ** | eval, | |
| (char **ap, int f) | ||||
| ) |
| _PROTOTYPE | ( | char ** | makenv, | |
| (void) | ||||
| ) |
| _PROTOTYPE | ( | int | subgetc, | |
| (int ec, int quoted) | ||||
| ) |
| _PROTOTYPE | ( | int | rlookup, | |
| (char *n) | ||||
| ) |
| _PROTOTYPE | ( | char * | unquote, | |
| (char *as) | ||||
| ) |
| _PROTOTYPE | ( | char * | itoa, | |
| (unsigned u, int n) | ||||
| ) |
| _PROTOTYPE | ( | char * | space, | |
| (int n) | ||||
| ) |
| int(*)() inbuilt | ( | ) |
| struct env e |
| Extern struct ioarg ioargstack[NPUSH] |
1.5.8