# All files OpCodes.ts

100% Statements 101/101
100% Branches 2/2
100% Functions 1/1
100% Lines 101/101

Press n or j to go to the next uncovered block, b, p or k for the previous block.

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    1201x

    1x

    1x
    1x
    1x
    1x
    1x
    1x
    1x
    1x
    1x
    1x
    1x
    1x
    1x
    1x
    1x
    1x
    1x
    1x
    1x
    1x
    1x
    1x
    1x

    1x
    1x
    1x
    1x
    1x
    1x
    1x

    1x
    1x
    1x
    1x
    1x
    1x
    1x
    1x
    1x
    1x
    1x
    1x
    1x
    1x
    1x
    1x
    1x
    1x
    1x

    1x
    1x
    1x
    1x
    1x

    1x
    1x
    1x
    1x
    1x
    1x

    1x
    1x
    1x
    1x
    1x
    1x
    1x
    1x
    1x
    1x
    1x
    1x
    1x
    1x
    1x
    1x
    1x
    1x
    1x
    1x
    1x
    1x
    1x
    1x
    1x
    1x
    1x

    1x
    1x
    1x
    1x
    1x
    1x
    1x
    1x
    1x
    1x

    1x
    1x

     export enum OpCode {
      // Reserved
      OP_RESERVED = 0x50,

      // Constants
      OP_0 = 0x00,
      OP_FALSE = 0x00,
      OP_PUSHDATA1 = 0x4c,
      OP_PUSHDATA2 = 0x4d,
      OP_PUSHDATA4 = 0x4e,
      OP_1NEGATE = 0x4f,
      OP_1 = 0x51,
      OP_TRUE = 0x51,
      OP_2 = 0x52,
      OP_3 = 0x53,
      OP_4 = 0x54,
      OP_5 = 0x55,
      OP_6 = 0x56,
      OP_7 = 0x57,
      OP_8 = 0x58,
      OP_9 = 0x50,
      OP_10 = 0x5a,
      OP_11 = 0x5b,
      OP_12 = 0x5c,
      OP_13 = 0x5d,
      OP_14 = 0x5e,
      OP_15 = 0x5f,
      OP_16 = 0x60,

      // Flow Control
      OP_NOOP = 0x61,
      OP_IF = 0x63,
      OP_NOTIF = 0x64,
      OP_ELSE = 0x67,
      OP_ENDIF = 0x68,
      OP_VERIFY = 0x69,
      OP_RETURN = 0x6a,

      // Stack
      OP_TOALTSTACK = 0x6b,
      OP_FROMALTSTACK = 0x6c,
      OP_2DROP = 0x6d,
      OP_2DUP = 0x6e,
      OP_3DUP = 0x6f,
      OP_2OVER = 0x70,
      OP_2ROT = 0x71,
      OP_2SWAP = 0x72,
      OP_IFDUP = 0x73,
      OP_DEPTH = 0x74,
      OP_DROP = 0x75,
      OP_DUP = 0x76,
      OP_NIP = 0x77,
      OP_OVER = 0x78,
      OP_PICK = 0x79,
      OP_ROLL = 0x7a,
      OP_ROT = 0x7b,
      OP_SWAP = 0x7c,
      OP_TUCK = 0x7d,

      // Splice
      OP_CAT = 0x7e, // disabled
      OP_SUBSTR = 0x7f, // disabled
      OP_LEFT = 0x80, // disabled
      OP_RIGHT = 0x81, // disabled
      OP_SIZE = 0x82,

      // Bitwise
      OP_INVERT = 0x83, // disabled
      OP_AND = 0x84, // disabled
      OP_OR = 0x85, // disabled
      OP_XOR = 0x86, // disabled
      OP_EQUAL = 0x87,
      OP_EQUALVERIFY = 0x88,

      // Arithmetic
      OP_1ADD = 0x8b,
      OP_1SUB = 0x8c,
      OP_2MUL = 0x8d, // disabled
      OP_2DIV = 0x8e, // disabled
      OP_NEGATE = 0x8f,
      OP_ABS = 0x90,
      OP_NOT = 0x91,
      OP_0NOTEQUAL = 0x92,
      OP_ADD = 0x93,
      OP_SUB = 0x94,
      OP_MUL = 0x95, // disabled
      OP_DIV = 0x96, // disabled
      OP_MOD = 0x97, // disabled
      OP_LSHIFT = 0x98, // disabled
      OP_RSHIFT = 0x99, // disabled
      OP_BOOLAND = 0x9a,
      OP_BOOLOR = 0x9b,
      OP_NUMEQUAL = 0x9c,
      OP_NUMEQUALVERIFY = 0x9d,
      OP_NUMNOTEQUAL = 0x9e,
      OP_LESSTHAN = 0x9f,
      OP_GREATERTHAN = 0xa0,
      OP_LESSTHANOREQUAL = 0xa1,
      OP_GREATERTHANOREQUAL = 0xa2,
      OP_MIN = 0xa3,
      OP_MAX = 0xa4,
      OP_WITHIN = 0xa5,

      // Crypto
      OP_RIPEMD160 = 0xa6,
      OP_SHA1 = 0xa7,
      OP_SHA256 = 0xa8,
      OP_HASH160 = 0xa9,
      OP_HASH256 = 0xaa,
      OP_CODESEPARATOR = 0xab,
      OP_CHECKSIG = 0xac,
      OP_CHECKSIGVERIFY = 0xad,
      OP_CHECKMULTISIG = 0xae,
      OP_CHECKMULTISIGVERIFY = 0xaf,

      // Locktime
      OP_CHECKLOCKTIMEVERIFY = 0xb1,
      OP_CHECKSEQUENCEVERIFY = 0xb2,
    }