Annotation of researchv9/jtools/src/pi/univ.h, revision 1.1

1.1     ! root        1: #ifndef UNIV_H
        !             2: #define UNIV_H
        !             3: 
        !             4: enum Op;
        !             5: enum EDisc;
        !             6: class Asm;
        !             7: class Block;
        !             8: class Bls;
        !             9: class Bpts;
        !            10: class BptReq;
        !            11: class BsdTShare;
        !            12: class BsdType;
        !            13: class BsdSymTab;
        !            14: class Ed8SymTab;
        !            15: class CallStk;
        !            16: class Context;
        !            17: class Core;
        !            18: class CoreContext;
        !            19: class Cslfd;
        !            20: class DType;
        !            21: class Expr;
        !            22: class Frame;
        !            23: class Func;
        !            24: class Globals;
        !            25: class HostContext;
        !            26: class HostCore;
        !            27: class HostMaster;
        !            28: class HostProcess;
        !            29: class Index;
        !            30: class Journal;
        !            31: class KernCore;
        !            32: class KernMaster;
        !            33: class KernProcess;
        !            34: class Master;
        !            35: class Memory;
        !            36: class Pad;
        !            37: class Phrase;
        !            38: class Process;
        !            39: class Remote;
        !            40: class SigBit;
        !            41: class SigMask;
        !            42: class Source;
        !            43: class SrcDir;
        !            44: class Stmt;
        !            45: class SymTab;
        !            46: class Symbol;
        !            47: class Trap;
        !            48: class UType;
        !            49: class Var;
        !            50: enum Behavs;
        !            51: 
        !            52: int strcmp(char*,char*);
        !            53: inline int eqstr(char *a, char *b)
        !            54: {
        !            55:        return !a ? !b : b && *a==*b && !strcmp(a+1,b+1);
        !            56: }
        !            57: 
        !            58: 
        !            59: class Cslfd {
        !            60:        friend HostCore;
        !            61:        friend M68kCore;
        !            62:         void   init(long l, double d);
        !            63:         char   *flterr;
        !            64: public:
        !            65:         double dbl;
        !            66:         float  flt;
        !            67:         long   lng;
        !            68:         short  sht;
        !            69:         char   chr;
        !            70: unsigned char  uch();
        !            71: unsigned short ush();
        !            72:         char   *floaterror();
        !            73:                Cslfd(long);
        !            74:                Cslfd(double);
        !            75:                Cslfd(int);
        !            76:                Cslfd();
        !            77: };
        !            78: 
        !            79: enum UDisc {
        !            80:        U_ERROR         = 0,
        !            81: 
        !            82:        U_FUNC          = 1,
        !            83:        U_GLB           = 2,
        !            84:        U_STA           = 3,
        !            85:        U_STMT          = 4,
        !            86:        U_UTYPE         = 5,
        !            87: #                              define TOSYM 0x7        /* 2^n-1 */
        !            88:        U_ARG           = 10,
        !            89:        U_AUT           = 11,
        !            90:        U_BLOCK         = 12,
        !            91:        U_FST           = 13,
        !            92:        U_MOT           = 14,
        !            93:        U_SOURCE        = 15,
        !            94: 
        !            95:        U_ASM           = 20,
        !            96:        U_AUDIT         = 21,
        !            97:        U_BLKVARS       = 22,
        !            98:        U_BPTS          = 23,
        !            99:        U_CELL          = 24,
        !           100:        U_CORE          = 25,
        !           101:        U_DTYPE         = 26,
        !           102:        U_EXPR          = 27,
        !           103:        U_MASTER        = 28,
        !           104:        U_GLOBALS       = 29,
        !           105:        U_INSTR         = 30,
        !           106:        U_MEMORY        = 32,
        !           107:        U_PHRASE        = 33,
        !           108:        U_PROCESS       = 34,
        !           109:        U_REG           = 35,
        !           110:        U_REGCELL       = 36,
        !           111:        U_REGFILE       = 37,
        !           112:        U_SRCFUNCS      = 38,
        !           113:        U_SRCTEXT       = 39,
        !           114:        U_STABSRCS      = 40,
        !           115:        U_SYMTAB        = 41,
        !           116:        U_TRAP          = 42,
        !           117:        U_TYPMEMS       = 43,
        !           118:        U_WD            = 44,
        !           119:        U_SIGMASK       = 45,
        !           120:        U_HELP          = 46,
        !           121:        U_SRCDIR        = 47,
        !           122:        U_CONTEXT       = 48,
        !           123:        U_HOSTMASTER    = 49,
        !           124:        U_TERMMASTER    = 49,
        !           125:        U_SIGBIT        = 50,
        !           126:        U_BPTREQ        = 51,
        !           127:        U_JOURNAL       = 52,
        !           128:        U_FRAME         = 53,
        !           129: };
        !           130: 
        !           131: #include "lib.h"
        !           132: #include <pads.pub>
        !           133: 
        !           134: #define PUBLIC(c,d)\
        !           135:        int     disc()  { return d; }\
        !           136: public:\
        !           137:        int     ok()    { return this && disc() == d; }
        !           138: 
        !           139: 
        !           140: #define VACUOUS                { abort(); }
        !           141: #define NOVALUE                { abort(); return x; }
        !           142: 
        !           143: #define SVP '3.14'     /* != 0 */
        !           144: #endif

unix.superglobalmegacorp.com

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