Annotation of cci/usr/src/bin/cdb/tk.h, revision 1.1.1.1

1.1       root        1: /* @(#)tk.h    2.3 */
                      2: 
                      3: typedef short  LCE;    /* lanuguage code - used in mabiguous sitiuations */
                      4: #define lcC    0
                      5: #define lcPascal 1
                      6: #define lcFortran 2
                      7: 
                      8: /* these are in ASCII order of their characters, where practicable.
                      9:  * this is not meaningful, just meant to help organize things.
                     10:  */
                     11: 
                     12: /* where a token has a certain meaning (e.g. tkStar means tkMul), this
                     13:  * is done with the = operator.  When there are multiple meanings
                     14:  * (i.e. the character is overloaded) then the BINARY operator token has
                     15:  * the same value as the basic symbol (e.g. tkMul=tkStar) and the unary
                     16:  * operator has its own token (tkDeref). The translation is context
                     17:  * sensitive and is done in expr.c.
                     18:  */
                     19: /* this WAS an enum, but went to defines for V7 compatibility */
                     20: 
                     21: #define tkNil          0
                     22: #define tkBang         1       /* ! */
                     23: #define tkDQuote       2       /* " */
                     24: #define tkHash         3       /* # */
                     25: #define tkDollar       4       /* $ */
                     26: #define tkPercent      5       /* % */
                     27: #define tkModulo tkPercent
                     28: #define tkAmper                7       /* & */
                     29: #define tkBitAnd tkAmper
                     30: #define tkSQuote       8       /* ' */
                     31: #define tkLP           9       /* ( */
                     32: #define tkRP           10      /* ) */
                     33: #define tkStar         11      /* * */
                     34: #define tkMul tkStar
                     35: #define tkPlus         12      /* + */
                     36: #define tkComma                13      /* , */
                     37: #define tkMinus                14      /* - */
                     38: #define tkDot          15      /* . */
                     39: #define tkSlash                16      /* / */
                     40:        /* the numbers */
                     41: #define tkColon                17      /* : */
                     42: #define tkSemi         18      /* ; */
                     43: #define tkLAB          19      /* < */
                     44: #define tkLT tkLAB
                     45: #define tkAssign       20      /* = */
                     46: #define tkRAB          21      /* > */
                     47: #define tkGT tkRAB
                     48: #define tkQuest                22      /* ? */
                     49: #define tkAt           23      /* @ */
                     50:        /* upper case characters */
                     51: #define tkLSB          24      /* [ */
                     52: #define tkBackSlash    25      /* \ */
                     53: #define tkRSB          26      /* ] */
                     54: #define tkUpArrow      27      /* ^ */
                     55: #define tkXOR tkUpArrow        
                     56: #define tkUnderScore   28      /* _ */
                     57:        /* lower case characters */
                     58: #define tkLCB          29      /* { */
                     59: #define tkBar          30      /* | */
                     60: #define tkBitOr tkBar
                     61: #define tkRCB          31      /* } */
                     62: #define tkTilda                32      /* ~ */
                     63:        /* overloaded characters - translated in expr.c */
                     64: #define tkRef          33      /* & */
                     65: #define tkDeref                34      /* * */
                     66: #define tkUMinus               35      /* - unary minus */
                     67:        /* these are compound tokens */
                     68: #define tkAssPlus      36      /* += */
                     69: #define tkAssMinus     37      /* -= */
                     70: #define tkAssMult      38      /* *= */
                     71: #define tkAssDiv       39      /* /= */
                     72: #define tkAssMod       40      /* %= */
                     73: #define tkAssXOR       41      /* ^= */
                     74: #define tkAssBAND      42      /* &= */
                     75: #define tkAssBOR       43      /* |= */
                     76: #define tkAssLeft      44      /* <<= */
                     77: #define tkAssRight     45      /* >>= */
                     78: #define tkLAND         46      /* && */
                     79: #define tkLOR          47      /* || */
                     80: #define tkLE           48      /* <= */
                     81: #define tkGE           49      /* >= */
                     82: #define tkEqual                50      /* == */
                     83: #define tkNotEqual     51      /* != */
                     84: #define tkLShift       52      /* << */
                     85: #define tkRShift       53      /* >> */
                     86: #define tkPtr          54      /* -> */
                     87: #define tkDiv          55      /* //  for division */
                     88: #define tkNumber       56      /* 0123456789 */
                     89: #define tkStr          57      /* Hi */
                     90: #define tkStrConstant  58      /* "Hi\n" */
                     91: #define tkCharConstant 60      /* '\t' for instance */
                     92:        /* these are psuedo-tokens */
                     93: #define tkIndex                61      /* the index operation */
                     94: #define tkBOE          62      /* beginning of expression */
                     95: #define tkEOE          63      /* end of expression */
                     96: #define tkAdr          64      /* this is an address */
                     97: #define        tkSizeof        65      /* the C sizeof operator */
                     98: #define        tkInside        66      /* inside of procedure */
                     99: #define tkMax          67      /* highest value used + 1 */
                    100: #define tkOther                -1      /* <Twilight Zone> */
                    101: 
                    102: typedef int    TKE, *pTKE;
                    103: extern TKE     vtkLast, vtk;
                    104: extern TKE     TkNext();

unix.superglobalmegacorp.com

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