1*32203Sbostic /* sed.h 4.2 87/09/16 */ 218582Sralph 318582Sralph /* 418582Sralph * sed -- stream editor 518582Sralph */ 618582Sralph 718582Sralph #define CBRA 1 818582Sralph #define CCHR 2 918582Sralph #define CDOT 4 1018582Sralph #define CCL 6 1118582Sralph #define CNL 8 1218582Sralph #define CDOL 10 1318582Sralph #define CEOF 11 1418582Sralph #define CKET 12 1518582Sralph #define CNULL 13 1618582Sralph #define CLNUM 14 1718582Sralph #define CEND 16 1818582Sralph #define CDONT 17 1918582Sralph #define CBACK 18 2018582Sralph 2118582Sralph #define STAR 01 2218582Sralph 2318582Sralph #define NLINES 256 2418582Sralph #define DEPTH 20 2518582Sralph #define PTRSIZE 200 2618582Sralph #define RESIZE 10000 2718582Sralph #define ABUFSIZE 20 2818582Sralph #define LBSIZE 4000 2918582Sralph #define ESIZE 256 3018582Sralph #define LABSIZE 50 3118582Sralph #define NBRA 9 3218582Sralph 3318582Sralph FILE *fin; 3418582Sralph union reptr *abuf[ABUFSIZE]; 3518582Sralph union reptr **aptr; 3618582Sralph char *lastre; 3718582Sralph char ibuf[BUFSIZ]; 3818582Sralph char *cbp; 3918582Sralph char *ebp; 4018582Sralph char genbuf[LBSIZE]; 4118582Sralph char *loc1; 4218582Sralph char *loc2; 4318582Sralph char *locs; 4418582Sralph char seof; 4518582Sralph char *reend; 4618582Sralph char *lbend; 4718582Sralph char *hend; 4818582Sralph char *lcomend; 4918582Sralph union reptr *ptrend; 5018582Sralph int eflag; 5118582Sralph int dolflag; 5218582Sralph int sflag; 5318582Sralph int jflag; 5418582Sralph int numbra; 5518582Sralph int delflag; 5618582Sralph long lnum; 5718582Sralph char linebuf[LBSIZE+1]; 5818582Sralph char holdsp[LBSIZE+1]; 5918582Sralph char *spend; 6018582Sralph char *hspend; 6118582Sralph int nflag; 6218582Sralph int gflag; 6318582Sralph char *braelist[NBRA]; 6418582Sralph char *braslist[NBRA]; 6518582Sralph long tlno[NLINES]; 6618582Sralph int nlno; 67*32203Sbostic char *fname[12]; 6818582Sralph FILE *fcode[12]; 6918582Sralph int nfiles; 7018582Sralph 7118582Sralph #define ACOM 01 7218582Sralph #define BCOM 020 7318582Sralph #define CCOM 02 7418582Sralph #define CDCOM 025 7518582Sralph #define CNCOM 022 7618582Sralph #define COCOM 017 7718582Sralph #define CPCOM 023 7818582Sralph #define DCOM 03 7918582Sralph #define ECOM 015 8018582Sralph #define EQCOM 013 8118582Sralph #define FCOM 016 8218582Sralph #define GCOM 027 8318582Sralph #define CGCOM 030 8418582Sralph #define HCOM 031 8518582Sralph #define CHCOM 032 8618582Sralph #define ICOM 04 8718582Sralph #define LCOM 05 8818582Sralph #define NCOM 012 8918582Sralph #define PCOM 010 9018582Sralph #define QCOM 011 9118582Sralph #define RCOM 06 9218582Sralph #define SCOM 07 9318582Sralph #define TCOM 021 9418582Sralph #define WCOM 014 9518582Sralph #define CWCOM 024 9618582Sralph #define YCOM 026 9718582Sralph #define XCOM 033 9818582Sralph 9918582Sralph char *cp; 10018582Sralph char *reend; 10118582Sralph char *lbend; 10218582Sralph 10318582Sralph union reptr { 10418582Sralph struct reptr1 { 10518582Sralph char *ad1; 10618582Sralph char *ad2; 10718582Sralph char *re1; 10818582Sralph char *rhs; 10918582Sralph FILE *fcode; 11018582Sralph char command; 11118582Sralph char gfl; 11218582Sralph char pfl; 11318582Sralph char inar; 11418582Sralph char negfl; 11518582Sralph } A; 11618582Sralph struct reptr2 { 11718582Sralph char *ad1; 11818582Sralph char *ad2; 11918582Sralph union reptr *lb1; 12018582Sralph char *rhs; 12118582Sralph FILE *fcode; 12218582Sralph char command; 12318582Sralph char gfl; 12418582Sralph char pfl; 12518582Sralph char inar; 12618582Sralph char negfl; 12718582Sralph } B; 12818582Sralph } ptrspace[PTRSIZE], *rep; 12918582Sralph 13018582Sralph 13118582Sralph char respace[RESIZE]; 13218582Sralph 13318582Sralph struct label { 13418582Sralph char asc[9]; 13518582Sralph union reptr *chain; 13618582Sralph union reptr *address; 13718582Sralph } ltab[LABSIZE]; 13818582Sralph 13918582Sralph struct label *lab; 14018582Sralph struct label *labend; 14118582Sralph 14218582Sralph int f; 14318582Sralph int depth; 14418582Sralph 14518582Sralph int eargc; 14618582Sralph char **eargv; 14718582Sralph 14818582Sralph extern char bittab[]; 14918582Sralph 15018582Sralph union reptr **cmpend[DEPTH]; 15118582Sralph int depth; 15218582Sralph union reptr *pending; 15318582Sralph char *badp; 15418582Sralph char bad; 15518582Sralph char *compile(); 15618582Sralph char *ycomp(); 15718582Sralph char *address(); 15818582Sralph char *text(); 15918582Sralph char *compsub(); 16018582Sralph struct label *search(); 16118582Sralph char *gline(); 16218582Sralph char *place(); 16318582Sralph char compfl; 164