"Fossies" - the Fresh Open Source Software Archive

Member "install-tl-20200916/tlpkg/tlperl/lib/CORE/opnames.h" (10 Mar 2019, 8860 Bytes) of package /windows/misc/install-tl.zip:


As a special service "Fossies" has tried to format the requested source page into HTML format using (guessed) C and C++ source code syntax highlighting (style: standard) with prefixed line numbers and code folding option. Alternatively you can here view or download the uninterpreted source code file.

    1 /* -*- buffer-read-only: t -*-
    2  *
    3  *    opnames.h
    4  *
    5  *    Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007,
    6  *    2008 by Larry Wall and others
    7  *
    8  *    You may distribute under the terms of either the GNU General Public
    9  *    License or the Artistic License, as specified in the README file.
   10  *
   11  * !!!!!!!   DO NOT EDIT THIS FILE   !!!!!!!
   12  * This file is built by regen/opcode.pl from its data.
   13  * Any changes made here will be lost!
   14  */
   15 
   16 typedef enum opcode {
   17     OP_NULL      = 0,
   18     OP_STUB      = 1,
   19     OP_SCALAR    = 2,
   20     OP_PUSHMARK  = 3,
   21     OP_WANTARRAY     = 4,
   22     OP_CONST     = 5,
   23     OP_GVSV      = 6,
   24     OP_GV        = 7,
   25     OP_GELEM     = 8,
   26     OP_PADSV     = 9,
   27     OP_PADAV     = 10,
   28     OP_PADHV     = 11,
   29     OP_PADANY    = 12,
   30     OP_RV2GV     = 13,
   31     OP_RV2SV     = 14,
   32     OP_AV2ARYLEN     = 15,
   33     OP_RV2CV     = 16,
   34     OP_ANONCODE  = 17,
   35     OP_PROTOTYPE     = 18,
   36     OP_REFGEN    = 19,
   37     OP_SREFGEN   = 20,
   38     OP_REF       = 21,
   39     OP_BLESS     = 22,
   40     OP_BACKTICK  = 23,
   41     OP_GLOB      = 24,
   42     OP_READLINE  = 25,
   43     OP_RCATLINE  = 26,
   44     OP_REGCMAYBE     = 27,
   45     OP_REGCRESET     = 28,
   46     OP_REGCOMP   = 29,
   47     OP_MATCH     = 30,
   48     OP_QR        = 31,
   49     OP_SUBST     = 32,
   50     OP_SUBSTCONT     = 33,
   51     OP_TRANS     = 34,
   52     OP_TRANSR    = 35,
   53     OP_SASSIGN   = 36,
   54     OP_AASSIGN   = 37,
   55     OP_CHOP      = 38,
   56     OP_SCHOP     = 39,
   57     OP_CHOMP     = 40,
   58     OP_SCHOMP    = 41,
   59     OP_DEFINED   = 42,
   60     OP_UNDEF     = 43,
   61     OP_STUDY     = 44,
   62     OP_POS       = 45,
   63     OP_PREINC    = 46,
   64     OP_I_PREINC  = 47,
   65     OP_PREDEC    = 48,
   66     OP_I_PREDEC  = 49,
   67     OP_POSTINC   = 50,
   68     OP_I_POSTINC     = 51,
   69     OP_POSTDEC   = 52,
   70     OP_I_POSTDEC     = 53,
   71     OP_POW       = 54,
   72     OP_MULTIPLY  = 55,
   73     OP_I_MULTIPLY    = 56,
   74     OP_DIVIDE    = 57,
   75     OP_I_DIVIDE  = 58,
   76     OP_MODULO    = 59,
   77     OP_I_MODULO  = 60,
   78     OP_REPEAT    = 61,
   79     OP_ADD       = 62,
   80     OP_I_ADD     = 63,
   81     OP_SUBTRACT  = 64,
   82     OP_I_SUBTRACT    = 65,
   83     OP_CONCAT    = 66,
   84     OP_MULTICONCAT   = 67,
   85     OP_STRINGIFY     = 68,
   86     OP_LEFT_SHIFT    = 69,
   87     OP_RIGHT_SHIFT   = 70,
   88     OP_LT        = 71,
   89     OP_I_LT      = 72,
   90     OP_GT        = 73,
   91     OP_I_GT      = 74,
   92     OP_LE        = 75,
   93     OP_I_LE      = 76,
   94     OP_GE        = 77,
   95     OP_I_GE      = 78,
   96     OP_EQ        = 79,
   97     OP_I_EQ      = 80,
   98     OP_NE        = 81,
   99     OP_I_NE      = 82,
  100     OP_NCMP      = 83,
  101     OP_I_NCMP    = 84,
  102     OP_SLT       = 85,
  103     OP_SGT       = 86,
  104     OP_SLE       = 87,
  105     OP_SGE       = 88,
  106     OP_SEQ       = 89,
  107     OP_SNE       = 90,
  108     OP_SCMP      = 91,
  109     OP_BIT_AND   = 92,
  110     OP_BIT_XOR   = 93,
  111     OP_BIT_OR    = 94,
  112     OP_NBIT_AND  = 95,
  113     OP_NBIT_XOR  = 96,
  114     OP_NBIT_OR   = 97,
  115     OP_SBIT_AND  = 98,
  116     OP_SBIT_XOR  = 99,
  117     OP_SBIT_OR   = 100,
  118     OP_NEGATE    = 101,
  119     OP_I_NEGATE  = 102,
  120     OP_NOT       = 103,
  121     OP_COMPLEMENT    = 104,
  122     OP_NCOMPLEMENT   = 105,
  123     OP_SCOMPLEMENT   = 106,
  124     OP_SMARTMATCH    = 107,
  125     OP_ATAN2     = 108,
  126     OP_SIN       = 109,
  127     OP_COS       = 110,
  128     OP_RAND      = 111,
  129     OP_SRAND     = 112,
  130     OP_EXP       = 113,
  131     OP_LOG       = 114,
  132     OP_SQRT      = 115,
  133     OP_INT       = 116,
  134     OP_HEX       = 117,
  135     OP_OCT       = 118,
  136     OP_ABS       = 119,
  137     OP_LENGTH    = 120,
  138     OP_SUBSTR    = 121,
  139     OP_VEC       = 122,
  140     OP_INDEX     = 123,
  141     OP_RINDEX    = 124,
  142     OP_SPRINTF   = 125,
  143     OP_FORMLINE  = 126,
  144     OP_ORD       = 127,
  145     OP_CHR       = 128,
  146     OP_CRYPT     = 129,
  147     OP_UCFIRST   = 130,
  148     OP_LCFIRST   = 131,
  149     OP_UC        = 132,
  150     OP_LC        = 133,
  151     OP_QUOTEMETA     = 134,
  152     OP_RV2AV     = 135,
  153     OP_AELEMFAST     = 136,
  154     OP_AELEMFAST_LEX = 137,
  155     OP_AELEM     = 138,
  156     OP_ASLICE    = 139,
  157     OP_KVASLICE  = 140,
  158     OP_AEACH     = 141,
  159     OP_AVALUES   = 142,
  160     OP_AKEYS     = 143,
  161     OP_EACH      = 144,
  162     OP_VALUES    = 145,
  163     OP_KEYS      = 146,
  164     OP_DELETE    = 147,
  165     OP_EXISTS    = 148,
  166     OP_RV2HV     = 149,
  167     OP_HELEM     = 150,
  168     OP_HSLICE    = 151,
  169     OP_KVHSLICE  = 152,
  170     OP_MULTIDEREF    = 153,
  171     OP_UNPACK    = 154,
  172     OP_PACK      = 155,
  173     OP_SPLIT     = 156,
  174     OP_JOIN      = 157,
  175     OP_LIST      = 158,
  176     OP_LSLICE    = 159,
  177     OP_ANONLIST  = 160,
  178     OP_ANONHASH  = 161,
  179     OP_SPLICE    = 162,
  180     OP_PUSH      = 163,
  181     OP_POP       = 164,
  182     OP_SHIFT     = 165,
  183     OP_UNSHIFT   = 166,
  184     OP_SORT      = 167,
  185     OP_REVERSE   = 168,
  186     OP_GREPSTART     = 169,
  187     OP_GREPWHILE     = 170,
  188     OP_MAPSTART  = 171,
  189     OP_MAPWHILE  = 172,
  190     OP_RANGE     = 173,
  191     OP_FLIP      = 174,
  192     OP_FLOP      = 175,
  193     OP_AND       = 176,
  194     OP_OR        = 177,
  195     OP_XOR       = 178,
  196     OP_DOR       = 179,
  197     OP_COND_EXPR     = 180,
  198     OP_ANDASSIGN     = 181,
  199     OP_ORASSIGN  = 182,
  200     OP_DORASSIGN     = 183,
  201     OP_ENTERSUB  = 184,
  202     OP_LEAVESUB  = 185,
  203     OP_LEAVESUBLV    = 186,
  204     OP_ARGCHECK  = 187,
  205     OP_ARGELEM   = 188,
  206     OP_ARGDEFELEM    = 189,
  207     OP_CALLER    = 190,
  208     OP_WARN      = 191,
  209     OP_DIE       = 192,
  210     OP_RESET     = 193,
  211     OP_LINESEQ   = 194,
  212     OP_NEXTSTATE     = 195,
  213     OP_DBSTATE   = 196,
  214     OP_UNSTACK   = 197,
  215     OP_ENTER     = 198,
  216     OP_LEAVE     = 199,
  217     OP_SCOPE     = 200,
  218     OP_ENTERITER     = 201,
  219     OP_ITER      = 202,
  220     OP_ENTERLOOP     = 203,
  221     OP_LEAVELOOP     = 204,
  222     OP_RETURN    = 205,
  223     OP_LAST      = 206,
  224     OP_NEXT      = 207,
  225     OP_REDO      = 208,
  226     OP_DUMP      = 209,
  227     OP_GOTO      = 210,
  228     OP_EXIT      = 211,
  229     OP_METHOD    = 212,
  230     OP_METHOD_NAMED  = 213,
  231     OP_METHOD_SUPER  = 214,
  232     OP_METHOD_REDIR  = 215,
  233     OP_METHOD_REDIR_SUPER = 216,
  234     OP_ENTERGIVEN    = 217,
  235     OP_LEAVEGIVEN    = 218,
  236     OP_ENTERWHEN     = 219,
  237     OP_LEAVEWHEN     = 220,
  238     OP_BREAK     = 221,
  239     OP_CONTINUE  = 222,
  240     OP_OPEN      = 223,
  241     OP_CLOSE     = 224,
  242     OP_PIPE_OP   = 225,
  243     OP_FILENO    = 226,
  244     OP_UMASK     = 227,
  245     OP_BINMODE   = 228,
  246     OP_TIE       = 229,
  247     OP_UNTIE     = 230,
  248     OP_TIED      = 231,
  249     OP_DBMOPEN   = 232,
  250     OP_DBMCLOSE  = 233,
  251     OP_SSELECT   = 234,
  252     OP_SELECT    = 235,
  253     OP_GETC      = 236,
  254     OP_READ      = 237,
  255     OP_ENTERWRITE    = 238,
  256     OP_LEAVEWRITE    = 239,
  257     OP_PRTF      = 240,
  258     OP_PRINT     = 241,
  259     OP_SAY       = 242,
  260     OP_SYSOPEN   = 243,
  261     OP_SYSSEEK   = 244,
  262     OP_SYSREAD   = 245,
  263     OP_SYSWRITE  = 246,
  264     OP_EOF       = 247,
  265     OP_TELL      = 248,
  266     OP_SEEK      = 249,
  267     OP_TRUNCATE  = 250,
  268     OP_FCNTL     = 251,
  269     OP_IOCTL     = 252,
  270     OP_FLOCK     = 253,
  271     OP_SEND      = 254,
  272     OP_RECV      = 255,
  273     OP_SOCKET    = 256,
  274     OP_SOCKPAIR  = 257,
  275     OP_BIND      = 258,
  276     OP_CONNECT   = 259,
  277     OP_LISTEN    = 260,
  278     OP_ACCEPT    = 261,
  279     OP_SHUTDOWN  = 262,
  280     OP_GSOCKOPT  = 263,
  281     OP_SSOCKOPT  = 264,
  282     OP_GETSOCKNAME   = 265,
  283     OP_GETPEERNAME   = 266,
  284     OP_LSTAT     = 267,
  285     OP_STAT      = 268,
  286     OP_FTRREAD   = 269,
  287     OP_FTRWRITE  = 270,
  288     OP_FTREXEC   = 271,
  289     OP_FTEREAD   = 272,
  290     OP_FTEWRITE  = 273,
  291     OP_FTEEXEC   = 274,
  292     OP_FTIS      = 275,
  293     OP_FTSIZE    = 276,
  294     OP_FTMTIME   = 277,
  295     OP_FTATIME   = 278,
  296     OP_FTCTIME   = 279,
  297     OP_FTROWNED  = 280,
  298     OP_FTEOWNED  = 281,
  299     OP_FTZERO    = 282,
  300     OP_FTSOCK    = 283,
  301     OP_FTCHR     = 284,
  302     OP_FTBLK     = 285,
  303     OP_FTFILE    = 286,
  304     OP_FTDIR     = 287,
  305     OP_FTPIPE    = 288,
  306     OP_FTSUID    = 289,
  307     OP_FTSGID    = 290,
  308     OP_FTSVTX    = 291,
  309     OP_FTLINK    = 292,
  310     OP_FTTTY     = 293,
  311     OP_FTTEXT    = 294,
  312     OP_FTBINARY  = 295,
  313     OP_CHDIR     = 296,
  314     OP_CHOWN     = 297,
  315     OP_CHROOT    = 298,
  316     OP_UNLINK    = 299,
  317     OP_CHMOD     = 300,
  318     OP_UTIME     = 301,
  319     OP_RENAME    = 302,
  320     OP_LINK      = 303,
  321     OP_SYMLINK   = 304,
  322     OP_READLINK  = 305,
  323     OP_MKDIR     = 306,
  324     OP_RMDIR     = 307,
  325     OP_OPEN_DIR  = 308,
  326     OP_READDIR   = 309,
  327     OP_TELLDIR   = 310,
  328     OP_SEEKDIR   = 311,
  329     OP_REWINDDIR     = 312,
  330     OP_CLOSEDIR  = 313,
  331     OP_FORK      = 314,
  332     OP_WAIT      = 315,
  333     OP_WAITPID   = 316,
  334     OP_SYSTEM    = 317,
  335     OP_EXEC      = 318,
  336     OP_KILL      = 319,
  337     OP_GETPPID   = 320,
  338     OP_GETPGRP   = 321,
  339     OP_SETPGRP   = 322,
  340     OP_GETPRIORITY   = 323,
  341     OP_SETPRIORITY   = 324,
  342     OP_TIME      = 325,
  343     OP_TMS       = 326,
  344     OP_LOCALTIME     = 327,
  345     OP_GMTIME    = 328,
  346     OP_ALARM     = 329,
  347     OP_SLEEP     = 330,
  348     OP_SHMGET    = 331,
  349     OP_SHMCTL    = 332,
  350     OP_SHMREAD   = 333,
  351     OP_SHMWRITE  = 334,
  352     OP_MSGGET    = 335,
  353     OP_MSGCTL    = 336,
  354     OP_MSGSND    = 337,
  355     OP_MSGRCV    = 338,
  356     OP_SEMOP     = 339,
  357     OP_SEMGET    = 340,
  358     OP_SEMCTL    = 341,
  359     OP_REQUIRE   = 342,
  360     OP_DOFILE    = 343,
  361     OP_HINTSEVAL     = 344,
  362     OP_ENTEREVAL     = 345,
  363     OP_LEAVEEVAL     = 346,
  364     OP_ENTERTRY  = 347,
  365     OP_LEAVETRY  = 348,
  366     OP_GHBYNAME  = 349,
  367     OP_GHBYADDR  = 350,
  368     OP_GHOSTENT  = 351,
  369     OP_GNBYNAME  = 352,
  370     OP_GNBYADDR  = 353,
  371     OP_GNETENT   = 354,
  372     OP_GPBYNAME  = 355,
  373     OP_GPBYNUMBER    = 356,
  374     OP_GPROTOENT     = 357,
  375     OP_GSBYNAME  = 358,
  376     OP_GSBYPORT  = 359,
  377     OP_GSERVENT  = 360,
  378     OP_SHOSTENT  = 361,
  379     OP_SNETENT   = 362,
  380     OP_SPROTOENT     = 363,
  381     OP_SSERVENT  = 364,
  382     OP_EHOSTENT  = 365,
  383     OP_ENETENT   = 366,
  384     OP_EPROTOENT     = 367,
  385     OP_ESERVENT  = 368,
  386     OP_GPWNAM    = 369,
  387     OP_GPWUID    = 370,
  388     OP_GPWENT    = 371,
  389     OP_SPWENT    = 372,
  390     OP_EPWENT    = 373,
  391     OP_GGRNAM    = 374,
  392     OP_GGRGID    = 375,
  393     OP_GGRENT    = 376,
  394     OP_SGRENT    = 377,
  395     OP_EGRENT    = 378,
  396     OP_GETLOGIN  = 379,
  397     OP_SYSCALL   = 380,
  398     OP_LOCK      = 381,
  399     OP_ONCE      = 382,
  400     OP_CUSTOM    = 383,
  401     OP_COREARGS  = 384,
  402     OP_AVHVSWITCH    = 385,
  403     OP_RUNCV     = 386,
  404     OP_FC        = 387,
  405     OP_PADCV     = 388,
  406     OP_INTROCV   = 389,
  407     OP_CLONECV   = 390,
  408     OP_PADRANGE  = 391,
  409     OP_REFASSIGN     = 392,
  410     OP_LVREF     = 393,
  411     OP_LVREFSLICE    = 394,
  412     OP_LVAVREF   = 395,
  413     OP_ANONCONST     = 396,
  414     OP_max      
  415 } opcode;
  416 
  417 #define MAXO 397
  418 #define OP_FREED MAXO
  419 
  420 /* the OP_IS_* macros are optimized to a simple range check because
  421     all the member OPs are contiguous in regen/opcodes table.
  422     opcode.pl verifies the range contiguity, or generates an OR-equals
  423     expression */
  424 
  425 #define OP_IS_SOCKET(op)    \
  426     ((op) >= OP_SEND && (op) <= OP_GETPEERNAME)
  427 
  428 #define OP_IS_FILETEST(op)  \
  429     ((op) >= OP_FTRREAD && (op) <= OP_FTBINARY)
  430 
  431 #define OP_IS_FILETEST_ACCESS(op)   \
  432     ((op) >= OP_FTRREAD && (op) <= OP_FTEEXEC)
  433 
  434 #define OP_IS_NUMCOMPARE(op)    \
  435     ((op) >= OP_LT && (op) <= OP_I_NCMP)
  436 
  437 #define OP_IS_DIRHOP(op)    \
  438     ((op) >= OP_READDIR && (op) <= OP_CLOSEDIR)
  439 
  440 #define OP_IS_INFIX_BIT(op) \
  441     ((op) >= OP_BIT_AND && (op) <= OP_SBIT_OR)
  442 
  443 /* ex: set ro: */