github.com/expr-lang/expr@v1.16.9/vm/opcodes.go (about) 1 package vm 2 3 type Opcode byte 4 5 const ( 6 OpInvalid Opcode = iota 7 OpPush 8 OpInt 9 OpPop 10 OpStore 11 OpLoadVar 12 OpLoadConst 13 OpLoadField 14 OpLoadFast 15 OpLoadMethod 16 OpLoadFunc 17 OpLoadEnv 18 OpFetch 19 OpFetchField 20 OpMethod 21 OpTrue 22 OpFalse 23 OpNil 24 OpNegate 25 OpNot 26 OpEqual 27 OpEqualInt 28 OpEqualString 29 OpJump 30 OpJumpIfTrue 31 OpJumpIfFalse 32 OpJumpIfNil 33 OpJumpIfNotNil 34 OpJumpIfEnd 35 OpJumpBackward 36 OpIn 37 OpLess 38 OpMore 39 OpLessOrEqual 40 OpMoreOrEqual 41 OpAdd 42 OpSubtract 43 OpMultiply 44 OpDivide 45 OpModulo 46 OpExponent 47 OpRange 48 OpMatches 49 OpMatchesConst 50 OpContains 51 OpStartsWith 52 OpEndsWith 53 OpSlice 54 OpCall 55 OpCall0 56 OpCall1 57 OpCall2 58 OpCall3 59 OpCallN 60 OpCallFast 61 OpCallSafe 62 OpCallTyped 63 OpCallBuiltin1 64 OpArray 65 OpMap 66 OpLen 67 OpCast 68 OpDeref 69 OpIncrementIndex 70 OpDecrementIndex 71 OpIncrementCount 72 OpGetIndex 73 OpGetCount 74 OpGetLen 75 OpGetAcc 76 OpSetAcc 77 OpSetIndex 78 OpPointer 79 OpThrow 80 OpCreate 81 OpGroupBy 82 OpSortBy 83 OpSort 84 OpProfileStart 85 OpProfileEnd 86 OpBegin 87 OpEnd // This opcode must be at the end of this list. 88 )