pub enum Op<T>where
T: Immediates + ?Sized,{
Show 256 variants
Stop(Stop),
Add(Add),
Mul(Mul),
Sub(Sub),
Div(Div),
SDiv(SDiv),
Mod(Mod),
SMod(SMod),
AddMod(AddMod),
MulMod(MulMod),
Exp(Exp),
SignExtend(SignExtend),
Invalid0c(Invalid0c),
Invalid0d(Invalid0d),
Invalid0e(Invalid0e),
Invalid0f(Invalid0f),
Lt(Lt),
Gt(Gt),
SLt(SLt),
SGt(SGt),
Eq(Eq),
IsZero(IsZero),
And(And),
Or(Or),
Xor(Xor),
Not(Not),
Byte(Byte),
Shl(Shl),
Shr(Shr),
Sar(Sar),
Invalid1e(Invalid1e),
Invalid1f(Invalid1f),
Keccak256(Keccak256),
Invalid21(Invalid21),
Invalid22(Invalid22),
Invalid23(Invalid23),
Invalid24(Invalid24),
Invalid25(Invalid25),
Invalid26(Invalid26),
Invalid27(Invalid27),
Invalid28(Invalid28),
Invalid29(Invalid29),
Invalid2a(Invalid2a),
Invalid2b(Invalid2b),
Invalid2c(Invalid2c),
Invalid2d(Invalid2d),
Invalid2e(Invalid2e),
Invalid2f(Invalid2f),
Address(Address),
Balance(Balance),
Origin(Origin),
Caller(Caller),
CallValue(CallValue),
CallDataLoad(CallDataLoad),
CallDataSize(CallDataSize),
CallDataCopy(CallDataCopy),
CodeSize(CodeSize),
CodeCopy(CodeCopy),
GasPrice(GasPrice),
ExtCodeSize(ExtCodeSize),
ExtCodeCopy(ExtCodeCopy),
ReturnDataSize(ReturnDataSize),
ReturnDataCopy(ReturnDataCopy),
ExtCodeHash(ExtCodeHash),
BlockHash(BlockHash),
Coinbase(Coinbase),
Timestamp(Timestamp),
Number(Number),
Difficulty(Difficulty),
GasLimit(GasLimit),
ChainId(ChainId),
SelfBalance(SelfBalance),
BaseFee(BaseFee),
Invalid49(Invalid49),
Invalid4a(Invalid4a),
Invalid4b(Invalid4b),
Invalid4c(Invalid4c),
Invalid4d(Invalid4d),
Invalid4e(Invalid4e),
Invalid4f(Invalid4f),
Pop(Pop),
MLoad(MLoad),
MStore(MStore),
MStore8(MStore8),
SLoad(SLoad),
SStore(SStore),
Jump(Jump),
JumpI(JumpI),
GetPc(GetPc),
MSize(MSize),
Gas(Gas),
JumpDest(JumpDest),
Invalid5c(Invalid5c),
Invalid5d(Invalid5d),
Invalid5e(Invalid5e),
Push0(Push0),
Push1(Push1<T::P1>),
Push2(Push2<T::P2>),
Push3(Push3<T::P3>),
Push4(Push4<T::P4>),
Push5(Push5<T::P5>),
Push6(Push6<T::P6>),
Push7(Push7<T::P7>),
Push8(Push8<T::P8>),
Push9(Push9<T::P9>),
Push10(Push10<T::P10>),
Push11(Push11<T::P11>),
Push12(Push12<T::P12>),
Push13(Push13<T::P13>),
Push14(Push14<T::P14>),
Push15(Push15<T::P15>),
Push16(Push16<T::P16>),
Push17(Push17<T::P17>),
Push18(Push18<T::P18>),
Push19(Push19<T::P19>),
Push20(Push20<T::P20>),
Push21(Push21<T::P21>),
Push22(Push22<T::P22>),
Push23(Push23<T::P23>),
Push24(Push24<T::P24>),
Push25(Push25<T::P25>),
Push26(Push26<T::P26>),
Push27(Push27<T::P27>),
Push28(Push28<T::P28>),
Push29(Push29<T::P29>),
Push30(Push30<T::P30>),
Push31(Push31<T::P31>),
Push32(Push32<T::P32>),
Dup1(Dup1),
Dup2(Dup2),
Dup3(Dup3),
Dup4(Dup4),
Dup5(Dup5),
Dup6(Dup6),
Dup7(Dup7),
Dup8(Dup8),
Dup9(Dup9),
Dup10(Dup10),
Dup11(Dup11),
Dup12(Dup12),
Dup13(Dup13),
Dup14(Dup14),
Dup15(Dup15),
Dup16(Dup16),
Swap1(Swap1),
Swap2(Swap2),
Swap3(Swap3),
Swap4(Swap4),
Swap5(Swap5),
Swap6(Swap6),
Swap7(Swap7),
Swap8(Swap8),
Swap9(Swap9),
Swap10(Swap10),
Swap11(Swap11),
Swap12(Swap12),
Swap13(Swap13),
Swap14(Swap14),
Swap15(Swap15),
Swap16(Swap16),
Log0(Log0),
Log1(Log1),
Log2(Log2),
Log3(Log3),
Log4(Log4),
InvalidA5(InvalidA5),
InvalidA6(InvalidA6),
InvalidA7(InvalidA7),
InvalidA8(InvalidA8),
InvalidA9(InvalidA9),
InvalidAa(InvalidAa),
InvalidAb(InvalidAb),
InvalidAc(InvalidAc),
InvalidAd(InvalidAd),
InvalidAe(InvalidAe),
InvalidAf(InvalidAf),
InvalidB0(InvalidB0),
InvalidB1(InvalidB1),
InvalidB2(InvalidB2),
InvalidB3(InvalidB3),
InvalidB4(InvalidB4),
InvalidB5(InvalidB5),
InvalidB6(InvalidB6),
InvalidB7(InvalidB7),
InvalidB8(InvalidB8),
InvalidB9(InvalidB9),
InvalidBa(InvalidBa),
InvalidBb(InvalidBb),
InvalidBc(InvalidBc),
InvalidBd(InvalidBd),
InvalidBe(InvalidBe),
InvalidBf(InvalidBf),
InvalidC0(InvalidC0),
InvalidC1(InvalidC1),
InvalidC2(InvalidC2),
InvalidC3(InvalidC3),
InvalidC4(InvalidC4),
InvalidC5(InvalidC5),
InvalidC6(InvalidC6),
InvalidC7(InvalidC7),
InvalidC8(InvalidC8),
InvalidC9(InvalidC9),
InvalidCa(InvalidCa),
InvalidCb(InvalidCb),
InvalidCc(InvalidCc),
InvalidCd(InvalidCd),
InvalidCe(InvalidCe),
InvalidCf(InvalidCf),
InvalidD0(InvalidD0),
InvalidD1(InvalidD1),
InvalidD2(InvalidD2),
InvalidD3(InvalidD3),
InvalidD4(InvalidD4),
InvalidD5(InvalidD5),
InvalidD6(InvalidD6),
InvalidD7(InvalidD7),
InvalidD8(InvalidD8),
InvalidD9(InvalidD9),
InvalidDa(InvalidDa),
InvalidDb(InvalidDb),
InvalidDc(InvalidDc),
InvalidDd(InvalidDd),
InvalidDe(InvalidDe),
InvalidDf(InvalidDf),
InvalidE0(InvalidE0),
InvalidE1(InvalidE1),
InvalidE2(InvalidE2),
InvalidE3(InvalidE3),
InvalidE4(InvalidE4),
InvalidE5(InvalidE5),
InvalidE6(InvalidE6),
InvalidE7(InvalidE7),
InvalidE8(InvalidE8),
InvalidE9(InvalidE9),
InvalidEa(InvalidEa),
InvalidEb(InvalidEb),
InvalidEc(InvalidEc),
InvalidEd(InvalidEd),
InvalidEe(InvalidEe),
InvalidEf(InvalidEf),
Create(Create),
Call(Call),
CallCode(CallCode),
Return(Return),
DelegateCall(DelegateCall),
Create2(Create2),
InvalidF6(InvalidF6),
InvalidF7(InvalidF7),
InvalidF8(InvalidF8),
InvalidF9(InvalidF9),
StaticCall(StaticCall),
InvalidFb(InvalidFb),
InvalidFc(InvalidFc),
Revert(Revert),
Invalid(Invalid),
SelfDestruct(SelfDestruct),
}
Expand description
All instructions in the shanghai fork.
Variants§
Stop(Stop)
The stop
instruction (See Stop
.)
Add(Add)
The add
instruction (See Add
.)
Mul(Mul)
The mul
instruction (See Mul
.)
Sub(Sub)
The sub
instruction (See Sub
.)
Div(Div)
The div
instruction (See Div
.)
SDiv(SDiv)
The sdiv
instruction (See SDiv
.)
Mod(Mod)
The mod
instruction (See Mod
.)
SMod(SMod)
The smod
instruction (See SMod
.)
AddMod(AddMod)
The addmod
instruction (See AddMod
.)
MulMod(MulMod)
The mulmod
instruction (See MulMod
.)
Exp(Exp)
The exp
instruction (See Exp
.)
SignExtend(SignExtend)
The signextend
instruction (See SignExtend
.)
Invalid0c(Invalid0c)
The invalid_0c
instruction (See Invalid0c
.)
Invalid0d(Invalid0d)
The invalid_0d
instruction (See Invalid0d
.)
Invalid0e(Invalid0e)
The invalid_0e
instruction (See Invalid0e
.)
Invalid0f(Invalid0f)
The invalid_0f
instruction (See Invalid0f
.)
Lt(Lt)
The lt
instruction (See Lt
.)
Gt(Gt)
The gt
instruction (See Gt
.)
SLt(SLt)
The slt
instruction (See SLt
.)
SGt(SGt)
The sgt
instruction (See SGt
.)
Eq(Eq)
The eq
instruction (See Eq
.)
IsZero(IsZero)
The iszero
instruction (See IsZero
.)
And(And)
The and
instruction (See And
.)
Or(Or)
The or
instruction (See Or
.)
Xor(Xor)
The xor
instruction (See Xor
.)
Not(Not)
The not
instruction (See Not
.)
Byte(Byte)
The byte
instruction (See Byte
.)
Shl(Shl)
The shl
instruction (See Shl
.)
Shr(Shr)
The shr
instruction (See Shr
.)
Sar(Sar)
The sar
instruction (See Sar
.)
Invalid1e(Invalid1e)
The invalid_1e
instruction (See Invalid1e
.)
Invalid1f(Invalid1f)
The invalid_1f
instruction (See Invalid1f
.)
Keccak256(Keccak256)
The keccak256
instruction (See Keccak256
.)
Invalid21(Invalid21)
The invalid_21
instruction (See Invalid21
.)
Invalid22(Invalid22)
The invalid_22
instruction (See Invalid22
.)
Invalid23(Invalid23)
The invalid_23
instruction (See Invalid23
.)
Invalid24(Invalid24)
The invalid_24
instruction (See Invalid24
.)
Invalid25(Invalid25)
The invalid_25
instruction (See Invalid25
.)
Invalid26(Invalid26)
The invalid_26
instruction (See Invalid26
.)
Invalid27(Invalid27)
The invalid_27
instruction (See Invalid27
.)
Invalid28(Invalid28)
The invalid_28
instruction (See Invalid28
.)
Invalid29(Invalid29)
The invalid_29
instruction (See Invalid29
.)
Invalid2a(Invalid2a)
The invalid_2a
instruction (See Invalid2a
.)
Invalid2b(Invalid2b)
The invalid_2b
instruction (See Invalid2b
.)
Invalid2c(Invalid2c)
The invalid_2c
instruction (See Invalid2c
.)
Invalid2d(Invalid2d)
The invalid_2d
instruction (See Invalid2d
.)
Invalid2e(Invalid2e)
The invalid_2e
instruction (See Invalid2e
.)
Invalid2f(Invalid2f)
The invalid_2f
instruction (See Invalid2f
.)
Address(Address)
The address
instruction (See Address
.)
Balance(Balance)
The balance
instruction (See Balance
.)
Origin(Origin)
The origin
instruction (See Origin
.)
Caller(Caller)
The caller
instruction (See Caller
.)
CallValue(CallValue)
The callvalue
instruction (See CallValue
.)
CallDataLoad(CallDataLoad)
The calldataload
instruction (See CallDataLoad
.)
CallDataSize(CallDataSize)
The calldatasize
instruction (See CallDataSize
.)
CallDataCopy(CallDataCopy)
The calldatacopy
instruction (See CallDataCopy
.)
CodeSize(CodeSize)
The codesize
instruction (See CodeSize
.)
CodeCopy(CodeCopy)
The codecopy
instruction (See CodeCopy
.)
GasPrice(GasPrice)
The gasprice
instruction (See GasPrice
.)
ExtCodeSize(ExtCodeSize)
The extcodesize
instruction (See ExtCodeSize
.)
ExtCodeCopy(ExtCodeCopy)
The extcodecopy
instruction (See ExtCodeCopy
.)
ReturnDataSize(ReturnDataSize)
The returndatasize
instruction (See ReturnDataSize
.)
ReturnDataCopy(ReturnDataCopy)
The returndatacopy
instruction (See ReturnDataCopy
.)
ExtCodeHash(ExtCodeHash)
The extcodehash
instruction (See ExtCodeHash
.)
BlockHash(BlockHash)
The blockhash
instruction (See BlockHash
.)
Coinbase(Coinbase)
The coinbase
instruction (See Coinbase
.)
Timestamp(Timestamp)
The timestamp
instruction (See Timestamp
.)
Number(Number)
The number
instruction (See Number
.)
Difficulty(Difficulty)
The difficulty
instruction (See Difficulty
.)
GasLimit(GasLimit)
The gaslimit
instruction (See GasLimit
.)
ChainId(ChainId)
The chainid
instruction (See ChainId
.)
SelfBalance(SelfBalance)
The selfbalance
instruction (See SelfBalance
.)
BaseFee(BaseFee)
The basefee
instruction (See BaseFee
.)
Invalid49(Invalid49)
The invalid_49
instruction (See Invalid49
.)
Invalid4a(Invalid4a)
The invalid_4a
instruction (See Invalid4a
.)
Invalid4b(Invalid4b)
The invalid_4b
instruction (See Invalid4b
.)
Invalid4c(Invalid4c)
The invalid_4c
instruction (See Invalid4c
.)
Invalid4d(Invalid4d)
The invalid_4d
instruction (See Invalid4d
.)
Invalid4e(Invalid4e)
The invalid_4e
instruction (See Invalid4e
.)
Invalid4f(Invalid4f)
The invalid_4f
instruction (See Invalid4f
.)
Pop(Pop)
The pop
instruction (See Pop
.)
MLoad(MLoad)
The mload
instruction (See MLoad
.)
MStore(MStore)
The mstore
instruction (See MStore
.)
MStore8(MStore8)
The mstore8
instruction (See MStore8
.)
SLoad(SLoad)
The sload
instruction (See SLoad
.)
SStore(SStore)
The sstore
instruction (See SStore
.)
Jump(Jump)
The jump
instruction (See Jump
.)
JumpI(JumpI)
The jumpi
instruction (See JumpI
.)
GetPc(GetPc)
The pc
instruction (See GetPc
.)
MSize(MSize)
The msize
instruction (See MSize
.)
Gas(Gas)
The gas
instruction (See Gas
.)
JumpDest(JumpDest)
The jumpdest
instruction (See JumpDest
.)
Invalid5c(Invalid5c)
The invalid_5c
instruction (See Invalid5c
.)
Invalid5d(Invalid5d)
The invalid_5d
instruction (See Invalid5d
.)
Invalid5e(Invalid5e)
The invalid_5e
instruction (See Invalid5e
.)
Push0(Push0)
The push0
instruction (See Push0
.)
Push1(Push1<T::P1>)
The push1
instruction (See Push1
.)
Push2(Push2<T::P2>)
The push2
instruction (See Push2
.)
Push3(Push3<T::P3>)
The push3
instruction (See Push3
.)
Push4(Push4<T::P4>)
The push4
instruction (See Push4
.)
Push5(Push5<T::P5>)
The push5
instruction (See Push5
.)
Push6(Push6<T::P6>)
The push6
instruction (See Push6
.)
Push7(Push7<T::P7>)
The push7
instruction (See Push7
.)
Push8(Push8<T::P8>)
The push8
instruction (See Push8
.)
Push9(Push9<T::P9>)
The push9
instruction (See Push9
.)
Push10(Push10<T::P10>)
The push10
instruction (See Push10
.)
Push11(Push11<T::P11>)
The push11
instruction (See Push11
.)
Push12(Push12<T::P12>)
The push12
instruction (See Push12
.)
Push13(Push13<T::P13>)
The push13
instruction (See Push13
.)
Push14(Push14<T::P14>)
The push14
instruction (See Push14
.)
Push15(Push15<T::P15>)
The push15
instruction (See Push15
.)
Push16(Push16<T::P16>)
The push16
instruction (See Push16
.)
Push17(Push17<T::P17>)
The push17
instruction (See Push17
.)
Push18(Push18<T::P18>)
The push18
instruction (See Push18
.)
Push19(Push19<T::P19>)
The push19
instruction (See Push19
.)
Push20(Push20<T::P20>)
The push20
instruction (See Push20
.)
Push21(Push21<T::P21>)
The push21
instruction (See Push21
.)
Push22(Push22<T::P22>)
The push22
instruction (See Push22
.)
Push23(Push23<T::P23>)
The push23
instruction (See Push23
.)
Push24(Push24<T::P24>)
The push24
instruction (See Push24
.)
Push25(Push25<T::P25>)
The push25
instruction (See Push25
.)
Push26(Push26<T::P26>)
The push26
instruction (See Push26
.)
Push27(Push27<T::P27>)
The push27
instruction (See Push27
.)
Push28(Push28<T::P28>)
The push28
instruction (See Push28
.)
Push29(Push29<T::P29>)
The push29
instruction (See Push29
.)
Push30(Push30<T::P30>)
The push30
instruction (See Push30
.)
Push31(Push31<T::P31>)
The push31
instruction (See Push31
.)
Push32(Push32<T::P32>)
The push32
instruction (See Push32
.)
Dup1(Dup1)
The dup1
instruction (See Dup1
.)
Dup2(Dup2)
The dup2
instruction (See Dup2
.)
Dup3(Dup3)
The dup3
instruction (See Dup3
.)
Dup4(Dup4)
The dup4
instruction (See Dup4
.)
Dup5(Dup5)
The dup5
instruction (See Dup5
.)
Dup6(Dup6)
The dup6
instruction (See Dup6
.)
Dup7(Dup7)
The dup7
instruction (See Dup7
.)
Dup8(Dup8)
The dup8
instruction (See Dup8
.)
Dup9(Dup9)
The dup9
instruction (See Dup9
.)
Dup10(Dup10)
The dup10
instruction (See Dup10
.)
Dup11(Dup11)
The dup11
instruction (See Dup11
.)
Dup12(Dup12)
The dup12
instruction (See Dup12
.)
Dup13(Dup13)
The dup13
instruction (See Dup13
.)
Dup14(Dup14)
The dup14
instruction (See Dup14
.)
Dup15(Dup15)
The dup15
instruction (See Dup15
.)
Dup16(Dup16)
The dup16
instruction (See Dup16
.)
Swap1(Swap1)
The swap1
instruction (See Swap1
.)
Swap2(Swap2)
The swap2
instruction (See Swap2
.)
Swap3(Swap3)
The swap3
instruction (See Swap3
.)
Swap4(Swap4)
The swap4
instruction (See Swap4
.)
Swap5(Swap5)
The swap5
instruction (See Swap5
.)
Swap6(Swap6)
The swap6
instruction (See Swap6
.)
Swap7(Swap7)
The swap7
instruction (See Swap7
.)
Swap8(Swap8)
The swap8
instruction (See Swap8
.)
Swap9(Swap9)
The swap9
instruction (See Swap9
.)
Swap10(Swap10)
The swap10
instruction (See Swap10
.)
Swap11(Swap11)
The swap11
instruction (See Swap11
.)
Swap12(Swap12)
The swap12
instruction (See Swap12
.)
Swap13(Swap13)
The swap13
instruction (See Swap13
.)
Swap14(Swap14)
The swap14
instruction (See Swap14
.)
Swap15(Swap15)
The swap15
instruction (See Swap15
.)
Swap16(Swap16)
The swap16
instruction (See Swap16
.)
Log0(Log0)
The log0
instruction (See Log0
.)
Log1(Log1)
The log1
instruction (See Log1
.)
Log2(Log2)
The log2
instruction (See Log2
.)
Log3(Log3)
The log3
instruction (See Log3
.)
Log4(Log4)
The log4
instruction (See Log4
.)
InvalidA5(InvalidA5)
The invalid_a5
instruction (See InvalidA5
.)
InvalidA6(InvalidA6)
The invalid_a6
instruction (See InvalidA6
.)
InvalidA7(InvalidA7)
The invalid_a7
instruction (See InvalidA7
.)
InvalidA8(InvalidA8)
The invalid_a8
instruction (See InvalidA8
.)
InvalidA9(InvalidA9)
The invalid_a9
instruction (See InvalidA9
.)
InvalidAa(InvalidAa)
The invalid_aa
instruction (See InvalidAa
.)
InvalidAb(InvalidAb)
The invalid_ab
instruction (See InvalidAb
.)
InvalidAc(InvalidAc)
The invalid_ac
instruction (See InvalidAc
.)
InvalidAd(InvalidAd)
The invalid_ad
instruction (See InvalidAd
.)
InvalidAe(InvalidAe)
The invalid_ae
instruction (See InvalidAe
.)
InvalidAf(InvalidAf)
The invalid_af
instruction (See InvalidAf
.)
InvalidB0(InvalidB0)
The invalid_b0
instruction (See InvalidB0
.)
InvalidB1(InvalidB1)
The invalid_b1
instruction (See InvalidB1
.)
InvalidB2(InvalidB2)
The invalid_b2
instruction (See InvalidB2
.)
InvalidB3(InvalidB3)
The invalid_b3
instruction (See InvalidB3
.)
InvalidB4(InvalidB4)
The invalid_b4
instruction (See InvalidB4
.)
InvalidB5(InvalidB5)
The invalid_b5
instruction (See InvalidB5
.)
InvalidB6(InvalidB6)
The invalid_b6
instruction (See InvalidB6
.)
InvalidB7(InvalidB7)
The invalid_b7
instruction (See InvalidB7
.)
InvalidB8(InvalidB8)
The invalid_b8
instruction (See InvalidB8
.)
InvalidB9(InvalidB9)
The invalid_b9
instruction (See InvalidB9
.)
InvalidBa(InvalidBa)
The invalid_ba
instruction (See InvalidBa
.)
InvalidBb(InvalidBb)
The invalid_bb
instruction (See InvalidBb
.)
InvalidBc(InvalidBc)
The invalid_bc
instruction (See InvalidBc
.)
InvalidBd(InvalidBd)
The invalid_bd
instruction (See InvalidBd
.)
InvalidBe(InvalidBe)
The invalid_be
instruction (See InvalidBe
.)
InvalidBf(InvalidBf)
The invalid_bf
instruction (See InvalidBf
.)
InvalidC0(InvalidC0)
The invalid_c0
instruction (See InvalidC0
.)
InvalidC1(InvalidC1)
The invalid_c1
instruction (See InvalidC1
.)
InvalidC2(InvalidC2)
The invalid_c2
instruction (See InvalidC2
.)
InvalidC3(InvalidC3)
The invalid_c3
instruction (See InvalidC3
.)
InvalidC4(InvalidC4)
The invalid_c4
instruction (See InvalidC4
.)
InvalidC5(InvalidC5)
The invalid_c5
instruction (See InvalidC5
.)
InvalidC6(InvalidC6)
The invalid_c6
instruction (See InvalidC6
.)
InvalidC7(InvalidC7)
The invalid_c7
instruction (See InvalidC7
.)
InvalidC8(InvalidC8)
The invalid_c8
instruction (See InvalidC8
.)
InvalidC9(InvalidC9)
The invalid_c9
instruction (See InvalidC9
.)
InvalidCa(InvalidCa)
The invalid_ca
instruction (See InvalidCa
.)
InvalidCb(InvalidCb)
The invalid_cb
instruction (See InvalidCb
.)
InvalidCc(InvalidCc)
The invalid_cc
instruction (See InvalidCc
.)
InvalidCd(InvalidCd)
The invalid_cd
instruction (See InvalidCd
.)
InvalidCe(InvalidCe)
The invalid_ce
instruction (See InvalidCe
.)
InvalidCf(InvalidCf)
The invalid_cf
instruction (See InvalidCf
.)
InvalidD0(InvalidD0)
The invalid_d0
instruction (See InvalidD0
.)
InvalidD1(InvalidD1)
The invalid_d1
instruction (See InvalidD1
.)
InvalidD2(InvalidD2)
The invalid_d2
instruction (See InvalidD2
.)
InvalidD3(InvalidD3)
The invalid_d3
instruction (See InvalidD3
.)
InvalidD4(InvalidD4)
The invalid_d4
instruction (See InvalidD4
.)
InvalidD5(InvalidD5)
The invalid_d5
instruction (See InvalidD5
.)
InvalidD6(InvalidD6)
The invalid_d6
instruction (See InvalidD6
.)
InvalidD7(InvalidD7)
The invalid_d7
instruction (See InvalidD7
.)
InvalidD8(InvalidD8)
The invalid_d8
instruction (See InvalidD8
.)
InvalidD9(InvalidD9)
The invalid_d9
instruction (See InvalidD9
.)
InvalidDa(InvalidDa)
The invalid_da
instruction (See InvalidDa
.)
InvalidDb(InvalidDb)
The invalid_db
instruction (See InvalidDb
.)
InvalidDc(InvalidDc)
The invalid_dc
instruction (See InvalidDc
.)
InvalidDd(InvalidDd)
The invalid_dd
instruction (See InvalidDd
.)
InvalidDe(InvalidDe)
The invalid_de
instruction (See InvalidDe
.)
InvalidDf(InvalidDf)
The invalid_df
instruction (See InvalidDf
.)
InvalidE0(InvalidE0)
The invalid_e0
instruction (See InvalidE0
.)
InvalidE1(InvalidE1)
The invalid_e1
instruction (See InvalidE1
.)
InvalidE2(InvalidE2)
The invalid_e2
instruction (See InvalidE2
.)
InvalidE3(InvalidE3)
The invalid_e3
instruction (See InvalidE3
.)
InvalidE4(InvalidE4)
The invalid_e4
instruction (See InvalidE4
.)
InvalidE5(InvalidE5)
The invalid_e5
instruction (See InvalidE5
.)
InvalidE6(InvalidE6)
The invalid_e6
instruction (See InvalidE6
.)
InvalidE7(InvalidE7)
The invalid_e7
instruction (See InvalidE7
.)
InvalidE8(InvalidE8)
The invalid_e8
instruction (See InvalidE8
.)
InvalidE9(InvalidE9)
The invalid_e9
instruction (See InvalidE9
.)
InvalidEa(InvalidEa)
The invalid_ea
instruction (See InvalidEa
.)
InvalidEb(InvalidEb)
The invalid_eb
instruction (See InvalidEb
.)
InvalidEc(InvalidEc)
The invalid_ec
instruction (See InvalidEc
.)
InvalidEd(InvalidEd)
The invalid_ed
instruction (See InvalidEd
.)
InvalidEe(InvalidEe)
The invalid_ee
instruction (See InvalidEe
.)
InvalidEf(InvalidEf)
The invalid_ef
instruction (See InvalidEf
.)
Create(Create)
The create
instruction (See Create
.)
Call(Call)
The call
instruction (See Call
.)
CallCode(CallCode)
The callcode
instruction (See CallCode
.)
Return(Return)
The return
instruction (See Return
.)
DelegateCall(DelegateCall)
The delegatecall
instruction (See DelegateCall
.)
Create2(Create2)
The create2
instruction (See Create2
.)
InvalidF6(InvalidF6)
The invalid_f6
instruction (See InvalidF6
.)
InvalidF7(InvalidF7)
The invalid_f7
instruction (See InvalidF7
.)
InvalidF8(InvalidF8)
The invalid_f8
instruction (See InvalidF8
.)
InvalidF9(InvalidF9)
The invalid_f9
instruction (See InvalidF9
.)
StaticCall(StaticCall)
The staticcall
instruction (See StaticCall
.)
InvalidFb(InvalidFb)
The invalid_fb
instruction (See InvalidFb
.)
InvalidFc(InvalidFc)
The invalid_fc
instruction (See InvalidFc
.)
Revert(Revert)
The revert
instruction (See Revert
.)
Invalid(Invalid)
The invalid
instruction (See Invalid
.)
SelfDestruct(SelfDestruct)
The selfdestruct
instruction (See SelfDestruct
.)
Implementations§
source§impl<T> Op<T>where
T: Immediates + ?Sized,
impl<T> Op<T>where T: Immediates + ?Sized,
sourcepub fn new(code: Op<()>) -> Option<Self>
pub fn new(code: Op<()>) -> Option<Self>
Create a new Op
.
Returns None
if the specified operation requires an immediate
argument. See Op::with
for more details.
source§impl<T, E> Op<T>where
T: Immediates + ?Sized,
E: 'static + Display + Error,
for<'a> &'a [u8]: TryInto<T::P1, Error = E> + TryInto<T::P2, Error = E> + TryInto<T::P3, Error = E> + TryInto<T::P4, Error = E> + TryInto<T::P5, Error = E> + TryInto<T::P6, Error = E> + TryInto<T::P7, Error = E> + TryInto<T::P8, Error = E> + TryInto<T::P9, Error = E> + TryInto<T::P10, Error = E> + TryInto<T::P11, Error = E> + TryInto<T::P12, Error = E> + TryInto<T::P13, Error = E> + TryInto<T::P14, Error = E> + TryInto<T::P15, Error = E> + TryInto<T::P16, Error = E> + TryInto<T::P17, Error = E> + TryInto<T::P18, Error = E> + TryInto<T::P19, Error = E> + TryInto<T::P20, Error = E> + TryInto<T::P21, Error = E> + TryInto<T::P22, Error = E> + TryInto<T::P23, Error = E> + TryInto<T::P24, Error = E> + TryInto<T::P25, Error = E> + TryInto<T::P26, Error = E> + TryInto<T::P27, Error = E> + TryInto<T::P28, Error = E> + TryInto<T::P29, Error = E> + TryInto<T::P30, Error = E> + TryInto<T::P31, Error = E> + TryInto<T::P32, Error = E>,
impl<T, E> Op<T>where T: Immediates + ?Sized, E: 'static + Display + Error, for<'a> &'a [u8]: TryInto<T::P1, Error = E> + TryInto<T::P2, Error = E> + TryInto<T::P3, Error = E> + TryInto<T::P4, Error = E> + TryInto<T::P5, Error = E> + TryInto<T::P6, Error = E> + TryInto<T::P7, Error = E> + TryInto<T::P8, Error = E> + TryInto<T::P9, Error = E> + TryInto<T::P10, Error = E> + TryInto<T::P11, Error = E> + TryInto<T::P12, Error = E> + TryInto<T::P13, Error = E> + TryInto<T::P14, Error = E> + TryInto<T::P15, Error = E> + TryInto<T::P16, Error = E> + TryInto<T::P17, Error = E> + TryInto<T::P18, Error = E> + TryInto<T::P19, Error = E> + TryInto<T::P20, Error = E> + TryInto<T::P21, Error = E> + TryInto<T::P22, Error = E> + TryInto<T::P23, Error = E> + TryInto<T::P24, Error = E> + TryInto<T::P25, Error = E> + TryInto<T::P26, Error = E> + TryInto<T::P27, Error = E> + TryInto<T::P28, Error = E> + TryInto<T::P29, Error = E> + TryInto<T::P30, Error = E> + TryInto<T::P31, Error = E> + TryInto<T::P32, Error = E>,
sourcepub fn from_slice(bytes: &[u8]) -> Result<Self, FromSliceError<E>>
pub fn from_slice(bytes: &[u8]) -> Result<Self, FromSliceError<E>>
Parse a byte slice into an Op
, with its immediate.
Returns an error if TryInto::try_into
fails, or if the byte
slice contains an immediate for an opcode that does not take one.
Errors usually occur when the byte slice is the wrong length for
the given instruction.
source§impl Op<()>
impl Op<()>
sourcepub fn push_for(n: u128) -> Option<Self>
pub fn push_for(n: u128) -> Option<Self>
Create the smallest push instruction capable of representing n
.
sourcepub fn push(sz: usize) -> Option<Self>
pub fn push(sz: usize) -> Option<Self>
Create a new push instruction with the given immediate size.
sourcepub fn with<T, I, E>(self, immediate: I) -> Result<Op<T>, E>where
T: ?Sized + Immediates,
I: TryInto<T::P1, Error = E> + TryInto<T::P2, Error = E> + TryInto<T::P3, Error = E> + TryInto<T::P4, Error = E> + TryInto<T::P5, Error = E> + TryInto<T::P6, Error = E> + TryInto<T::P7, Error = E> + TryInto<T::P8, Error = E> + TryInto<T::P9, Error = E> + TryInto<T::P10, Error = E> + TryInto<T::P11, Error = E> + TryInto<T::P12, Error = E> + TryInto<T::P13, Error = E> + TryInto<T::P14, Error = E> + TryInto<T::P15, Error = E> + TryInto<T::P16, Error = E> + TryInto<T::P17, Error = E> + TryInto<T::P18, Error = E> + TryInto<T::P19, Error = E> + TryInto<T::P20, Error = E> + TryInto<T::P21, Error = E> + TryInto<T::P22, Error = E> + TryInto<T::P23, Error = E> + TryInto<T::P24, Error = E> + TryInto<T::P25, Error = E> + TryInto<T::P26, Error = E> + TryInto<T::P27, Error = E> + TryInto<T::P28, Error = E> + TryInto<T::P29, Error = E> + TryInto<T::P30, Error = E> + TryInto<T::P31, Error = E> + TryInto<T::P32, Error = E>,
pub fn with<T, I, E>(self, immediate: I) -> Result<Op<T>, E>where T: ?Sized + Immediates, I: TryInto<T::P1, Error = E> + TryInto<T::P2, Error = E> + TryInto<T::P3, Error = E> + TryInto<T::P4, Error = E> + TryInto<T::P5, Error = E> + TryInto<T::P6, Error = E> + TryInto<T::P7, Error = E> + TryInto<T::P8, Error = E> + TryInto<T::P9, Error = E> + TryInto<T::P10, Error = E> + TryInto<T::P11, Error = E> + TryInto<T::P12, Error = E> + TryInto<T::P13, Error = E> + TryInto<T::P14, Error = E> + TryInto<T::P15, Error = E> + TryInto<T::P16, Error = E> + TryInto<T::P17, Error = E> + TryInto<T::P18, Error = E> + TryInto<T::P19, Error = E> + TryInto<T::P20, Error = E> + TryInto<T::P21, Error = E> + TryInto<T::P22, Error = E> + TryInto<T::P23, Error = E> + TryInto<T::P24, Error = E> + TryInto<T::P25, Error = E> + TryInto<T::P26, Error = E> + TryInto<T::P27, Error = E> + TryInto<T::P28, Error = E> + TryInto<T::P29, Error = E> + TryInto<T::P30, Error = E> + TryInto<T::P31, Error = E> + TryInto<T::P32, Error = E>,
Join this opcode with an immediate argument.
Panics if this opcode does not take an immediate argument. See
Op::new
.
Trait Implementations§
source§impl<T> Clone for Op<T>where
T: Immediates + ?Sized,
T::P1: Clone,
T::P2: Clone,
T::P3: Clone,
T::P4: Clone,
T::P5: Clone,
T::P6: Clone,
T::P7: Clone,
T::P8: Clone,
T::P9: Clone,
T::P10: Clone,
T::P11: Clone,
T::P12: Clone,
T::P13: Clone,
T::P14: Clone,
T::P15: Clone,
T::P16: Clone,
T::P17: Clone,
T::P18: Clone,
T::P19: Clone,
T::P20: Clone,
T::P21: Clone,
T::P22: Clone,
T::P23: Clone,
T::P24: Clone,
T::P25: Clone,
T::P26: Clone,
T::P27: Clone,
T::P28: Clone,
T::P29: Clone,
T::P30: Clone,
T::P31: Clone,
T::P32: Clone,
impl<T> Clone for Op<T>where T: Immediates + ?Sized, T::P1: Clone, T::P2: Clone, T::P3: Clone, T::P4: Clone, T::P5: Clone, T::P6: Clone, T::P7: Clone, T::P8: Clone, T::P9: Clone, T::P10: Clone, T::P11: Clone, T::P12: Clone, T::P13: Clone, T::P14: Clone, T::P15: Clone, T::P16: Clone, T::P17: Clone, T::P18: Clone, T::P19: Clone, T::P20: Clone, T::P21: Clone, T::P22: Clone, T::P23: Clone, T::P24: Clone, T::P25: Clone, T::P26: Clone, T::P27: Clone, T::P28: Clone, T::P29: Clone, T::P30: Clone, T::P31: Clone, T::P32: Clone,
source§impl<T> Debug for Op<T>where
T: Immediates + ?Sized,
T::P1: Debug,
T::P2: Debug,
T::P3: Debug,
T::P4: Debug,
T::P5: Debug,
T::P6: Debug,
T::P7: Debug,
T::P8: Debug,
T::P9: Debug,
T::P10: Debug,
T::P11: Debug,
T::P12: Debug,
T::P13: Debug,
T::P14: Debug,
T::P15: Debug,
T::P16: Debug,
T::P17: Debug,
T::P18: Debug,
T::P19: Debug,
T::P20: Debug,
T::P21: Debug,
T::P22: Debug,
T::P23: Debug,
T::P24: Debug,
T::P25: Debug,
T::P26: Debug,
T::P27: Debug,
T::P28: Debug,
T::P29: Debug,
T::P30: Debug,
T::P31: Debug,
T::P32: Debug,
impl<T> Debug for Op<T>where T: Immediates + ?Sized, T::P1: Debug, T::P2: Debug, T::P3: Debug, T::P4: Debug, T::P5: Debug, T::P6: Debug, T::P7: Debug, T::P8: Debug, T::P9: Debug, T::P10: Debug, T::P11: Debug, T::P12: Debug, T::P13: Debug, T::P14: Debug, T::P15: Debug, T::P16: Debug, T::P17: Debug, T::P18: Debug, T::P19: Debug, T::P20: Debug, T::P21: Debug, T::P22: Debug, T::P23: Debug, T::P24: Debug, T::P25: Debug, T::P26: Debug, T::P27: Debug, T::P28: Debug, T::P29: Debug, T::P30: Debug, T::P31: Debug, T::P32: Debug,
source§impl<T> From<CallDataCopy> for Op<T>where
T: ?Sized + Immediates,
impl<T> From<CallDataCopy> for Op<T>where T: ?Sized + Immediates,
source§fn from(op: CallDataCopy) -> Self
fn from(op: CallDataCopy) -> Self
source§impl<T> From<CallDataLoad> for Op<T>where
T: ?Sized + Immediates,
impl<T> From<CallDataLoad> for Op<T>where T: ?Sized + Immediates,
source§fn from(op: CallDataLoad) -> Self
fn from(op: CallDataLoad) -> Self
source§impl<T> From<CallDataSize> for Op<T>where
T: ?Sized + Immediates,
impl<T> From<CallDataSize> for Op<T>where T: ?Sized + Immediates,
source§fn from(op: CallDataSize) -> Self
fn from(op: CallDataSize) -> Self
source§impl<T> From<DelegateCall> for Op<T>where
T: ?Sized + Immediates,
impl<T> From<DelegateCall> for Op<T>where T: ?Sized + Immediates,
source§fn from(op: DelegateCall) -> Self
fn from(op: DelegateCall) -> Self
source§impl<T> From<Difficulty> for Op<T>where
T: ?Sized + Immediates,
impl<T> From<Difficulty> for Op<T>where T: ?Sized + Immediates,
source§fn from(op: Difficulty) -> Self
fn from(op: Difficulty) -> Self
source§impl<T> From<ExtCodeCopy> for Op<T>where
T: ?Sized + Immediates,
impl<T> From<ExtCodeCopy> for Op<T>where T: ?Sized + Immediates,
source§fn from(op: ExtCodeCopy) -> Self
fn from(op: ExtCodeCopy) -> Self
source§impl<T> From<ExtCodeHash> for Op<T>where
T: ?Sized + Immediates,
impl<T> From<ExtCodeHash> for Op<T>where T: ?Sized + Immediates,
source§fn from(op: ExtCodeHash) -> Self
fn from(op: ExtCodeHash) -> Self
source§impl<T> From<ExtCodeSize> for Op<T>where
T: ?Sized + Immediates,
impl<T> From<ExtCodeSize> for Op<T>where T: ?Sized + Immediates,
source§fn from(op: ExtCodeSize) -> Self
fn from(op: ExtCodeSize) -> Self
source§impl<I, T> From<Push1<I>> for Op<T>where
I: Immediate<1usize>,
T: ?Sized + Immediates<P1 = I>,
impl<I, T> From<Push1<I>> for Op<T>where I: Immediate<1usize>, T: ?Sized + Immediates<P1 = I>,
source§impl<I, T> From<Push10<I>> for Op<T>where
I: Immediate<10usize>,
T: ?Sized + Immediates<P10 = I>,
impl<I, T> From<Push10<I>> for Op<T>where I: Immediate<10usize>, T: ?Sized + Immediates<P10 = I>,
source§impl<I, T> From<Push11<I>> for Op<T>where
I: Immediate<11usize>,
T: ?Sized + Immediates<P11 = I>,
impl<I, T> From<Push11<I>> for Op<T>where I: Immediate<11usize>, T: ?Sized + Immediates<P11 = I>,
source§impl<I, T> From<Push12<I>> for Op<T>where
I: Immediate<12usize>,
T: ?Sized + Immediates<P12 = I>,
impl<I, T> From<Push12<I>> for Op<T>where I: Immediate<12usize>, T: ?Sized + Immediates<P12 = I>,
source§impl<I, T> From<Push13<I>> for Op<T>where
I: Immediate<13usize>,
T: ?Sized + Immediates<P13 = I>,
impl<I, T> From<Push13<I>> for Op<T>where I: Immediate<13usize>, T: ?Sized + Immediates<P13 = I>,
source§impl<I, T> From<Push14<I>> for Op<T>where
I: Immediate<14usize>,
T: ?Sized + Immediates<P14 = I>,
impl<I, T> From<Push14<I>> for Op<T>where I: Immediate<14usize>, T: ?Sized + Immediates<P14 = I>,
source§impl<I, T> From<Push15<I>> for Op<T>where
I: Immediate<15usize>,
T: ?Sized + Immediates<P15 = I>,
impl<I, T> From<Push15<I>> for Op<T>where I: Immediate<15usize>, T: ?Sized + Immediates<P15 = I>,
source§impl<I, T> From<Push16<I>> for Op<T>where
I: Immediate<16usize>,
T: ?Sized + Immediates<P16 = I>,
impl<I, T> From<Push16<I>> for Op<T>where I: Immediate<16usize>, T: ?Sized + Immediates<P16 = I>,
source§impl<I, T> From<Push17<I>> for Op<T>where
I: Immediate<17usize>,
T: ?Sized + Immediates<P17 = I>,
impl<I, T> From<Push17<I>> for Op<T>where I: Immediate<17usize>, T: ?Sized + Immediates<P17 = I>,
source§impl<I, T> From<Push18<I>> for Op<T>where
I: Immediate<18usize>,
T: ?Sized + Immediates<P18 = I>,
impl<I, T> From<Push18<I>> for Op<T>where I: Immediate<18usize>, T: ?Sized + Immediates<P18 = I>,
source§impl<I, T> From<Push19<I>> for Op<T>where
I: Immediate<19usize>,
T: ?Sized + Immediates<P19 = I>,
impl<I, T> From<Push19<I>> for Op<T>where I: Immediate<19usize>, T: ?Sized + Immediates<P19 = I>,
source§impl<I, T> From<Push2<I>> for Op<T>where
I: Immediate<2usize>,
T: ?Sized + Immediates<P2 = I>,
impl<I, T> From<Push2<I>> for Op<T>where I: Immediate<2usize>, T: ?Sized + Immediates<P2 = I>,
source§impl<I, T> From<Push20<I>> for Op<T>where
I: Immediate<20usize>,
T: ?Sized + Immediates<P20 = I>,
impl<I, T> From<Push20<I>> for Op<T>where I: Immediate<20usize>, T: ?Sized + Immediates<P20 = I>,
source§impl<I, T> From<Push21<I>> for Op<T>where
I: Immediate<21usize>,
T: ?Sized + Immediates<P21 = I>,
impl<I, T> From<Push21<I>> for Op<T>where I: Immediate<21usize>, T: ?Sized + Immediates<P21 = I>,
source§impl<I, T> From<Push22<I>> for Op<T>where
I: Immediate<22usize>,
T: ?Sized + Immediates<P22 = I>,
impl<I, T> From<Push22<I>> for Op<T>where I: Immediate<22usize>, T: ?Sized + Immediates<P22 = I>,
source§impl<I, T> From<Push23<I>> for Op<T>where
I: Immediate<23usize>,
T: ?Sized + Immediates<P23 = I>,
impl<I, T> From<Push23<I>> for Op<T>where I: Immediate<23usize>, T: ?Sized + Immediates<P23 = I>,
source§impl<I, T> From<Push24<I>> for Op<T>where
I: Immediate<24usize>,
T: ?Sized + Immediates<P24 = I>,
impl<I, T> From<Push24<I>> for Op<T>where I: Immediate<24usize>, T: ?Sized + Immediates<P24 = I>,
source§impl<I, T> From<Push25<I>> for Op<T>where
I: Immediate<25usize>,
T: ?Sized + Immediates<P25 = I>,
impl<I, T> From<Push25<I>> for Op<T>where I: Immediate<25usize>, T: ?Sized + Immediates<P25 = I>,
source§impl<I, T> From<Push26<I>> for Op<T>where
I: Immediate<26usize>,
T: ?Sized + Immediates<P26 = I>,
impl<I, T> From<Push26<I>> for Op<T>where I: Immediate<26usize>, T: ?Sized + Immediates<P26 = I>,
source§impl<I, T> From<Push27<I>> for Op<T>where
I: Immediate<27usize>,
T: ?Sized + Immediates<P27 = I>,
impl<I, T> From<Push27<I>> for Op<T>where I: Immediate<27usize>, T: ?Sized + Immediates<P27 = I>,
source§impl<I, T> From<Push28<I>> for Op<T>where
I: Immediate<28usize>,
T: ?Sized + Immediates<P28 = I>,
impl<I, T> From<Push28<I>> for Op<T>where I: Immediate<28usize>, T: ?Sized + Immediates<P28 = I>,
source§impl<I, T> From<Push29<I>> for Op<T>where
I: Immediate<29usize>,
T: ?Sized + Immediates<P29 = I>,
impl<I, T> From<Push29<I>> for Op<T>where I: Immediate<29usize>, T: ?Sized + Immediates<P29 = I>,
source§impl<I, T> From<Push3<I>> for Op<T>where
I: Immediate<3usize>,
T: ?Sized + Immediates<P3 = I>,
impl<I, T> From<Push3<I>> for Op<T>where I: Immediate<3usize>, T: ?Sized + Immediates<P3 = I>,
source§impl<I, T> From<Push30<I>> for Op<T>where
I: Immediate<30usize>,
T: ?Sized + Immediates<P30 = I>,
impl<I, T> From<Push30<I>> for Op<T>where I: Immediate<30usize>, T: ?Sized + Immediates<P30 = I>,
source§impl<I, T> From<Push31<I>> for Op<T>where
I: Immediate<31usize>,
T: ?Sized + Immediates<P31 = I>,
impl<I, T> From<Push31<I>> for Op<T>where I: Immediate<31usize>, T: ?Sized + Immediates<P31 = I>,
source§impl<I, T> From<Push32<I>> for Op<T>where
I: Immediate<32usize>,
T: ?Sized + Immediates<P32 = I>,
impl<I, T> From<Push32<I>> for Op<T>where I: Immediate<32usize>, T: ?Sized + Immediates<P32 = I>,
source§impl<I, T> From<Push4<I>> for Op<T>where
I: Immediate<4usize>,
T: ?Sized + Immediates<P4 = I>,
impl<I, T> From<Push4<I>> for Op<T>where I: Immediate<4usize>, T: ?Sized + Immediates<P4 = I>,
source§impl<I, T> From<Push5<I>> for Op<T>where
I: Immediate<5usize>,
T: ?Sized + Immediates<P5 = I>,
impl<I, T> From<Push5<I>> for Op<T>where I: Immediate<5usize>, T: ?Sized + Immediates<P5 = I>,
source§impl<I, T> From<Push6<I>> for Op<T>where
I: Immediate<6usize>,
T: ?Sized + Immediates<P6 = I>,
impl<I, T> From<Push6<I>> for Op<T>where I: Immediate<6usize>, T: ?Sized + Immediates<P6 = I>,
source§impl<I, T> From<Push7<I>> for Op<T>where
I: Immediate<7usize>,
T: ?Sized + Immediates<P7 = I>,
impl<I, T> From<Push7<I>> for Op<T>where I: Immediate<7usize>, T: ?Sized + Immediates<P7 = I>,
source§impl<I, T> From<Push8<I>> for Op<T>where
I: Immediate<8usize>,
T: ?Sized + Immediates<P8 = I>,
impl<I, T> From<Push8<I>> for Op<T>where I: Immediate<8usize>, T: ?Sized + Immediates<P8 = I>,
source§impl<I, T> From<Push9<I>> for Op<T>where
I: Immediate<9usize>,
T: ?Sized + Immediates<P9 = I>,
impl<I, T> From<Push9<I>> for Op<T>where I: Immediate<9usize>, T: ?Sized + Immediates<P9 = I>,
source§impl<T> From<ReturnDataCopy> for Op<T>where
T: ?Sized + Immediates,
impl<T> From<ReturnDataCopy> for Op<T>where T: ?Sized + Immediates,
source§fn from(op: ReturnDataCopy) -> Self
fn from(op: ReturnDataCopy) -> Self
source§impl<T> From<ReturnDataSize> for Op<T>where
T: ?Sized + Immediates,
impl<T> From<ReturnDataSize> for Op<T>where T: ?Sized + Immediates,
source§fn from(op: ReturnDataSize) -> Self
fn from(op: ReturnDataSize) -> Self
source§impl<T> From<SelfBalance> for Op<T>where
T: ?Sized + Immediates,
impl<T> From<SelfBalance> for Op<T>where T: ?Sized + Immediates,
source§fn from(op: SelfBalance) -> Self
fn from(op: SelfBalance) -> Self
source§impl<T> From<SelfDestruct> for Op<T>where
T: ?Sized + Immediates,
impl<T> From<SelfDestruct> for Op<T>where T: ?Sized + Immediates,
source§fn from(op: SelfDestruct) -> Self
fn from(op: SelfDestruct) -> Self
source§impl<T> From<SignExtend> for Op<T>where
T: ?Sized + Immediates,
impl<T> From<SignExtend> for Op<T>where T: ?Sized + Immediates,
source§fn from(op: SignExtend) -> Self
fn from(op: SignExtend) -> Self
source§impl<T> From<StaticCall> for Op<T>where
T: ?Sized + Immediates,
impl<T> From<StaticCall> for Op<T>where T: ?Sized + Immediates,
source§fn from(op: StaticCall) -> Self
fn from(op: StaticCall) -> Self
source§impl<T> Hash for Op<T>where
T: Immediates + ?Sized,
T::P1: Hash,
T::P2: Hash,
T::P3: Hash,
T::P4: Hash,
T::P5: Hash,
T::P6: Hash,
T::P7: Hash,
T::P8: Hash,
T::P9: Hash,
T::P10: Hash,
T::P11: Hash,
T::P12: Hash,
T::P13: Hash,
T::P14: Hash,
T::P15: Hash,
T::P16: Hash,
T::P17: Hash,
T::P18: Hash,
T::P19: Hash,
T::P20: Hash,
T::P21: Hash,
T::P22: Hash,
T::P23: Hash,
T::P24: Hash,
T::P25: Hash,
T::P26: Hash,
T::P27: Hash,
T::P28: Hash,
T::P29: Hash,
T::P30: Hash,
T::P31: Hash,
T::P32: Hash,
impl<T> Hash for Op<T>where T: Immediates + ?Sized, T::P1: Hash, T::P2: Hash, T::P3: Hash, T::P4: Hash, T::P5: Hash, T::P6: Hash, T::P7: Hash, T::P8: Hash, T::P9: Hash, T::P10: Hash, T::P11: Hash, T::P12: Hash, T::P13: Hash, T::P14: Hash, T::P15: Hash, T::P16: Hash, T::P17: Hash, T::P18: Hash, T::P19: Hash, T::P20: Hash, T::P21: Hash, T::P22: Hash, T::P23: Hash, T::P24: Hash, T::P25: Hash, T::P26: Hash, T::P27: Hash, T::P28: Hash, T::P29: Hash, T::P30: Hash, T::P31: Hash, T::P32: Hash,
source§impl<T> Operation for Op<T>where
T: Immediates + ?Sized,
impl<T> Operation for Op<T>where T: Immediates + ?Sized,
§type Code = Op<()>
type Code = Op<()>
Operation::code
.§type Immediate = <T as Immediates>::Immediate
type Immediate = <T as Immediates>::Immediate
§type ImmediateRef = <T as Immediates>::ImmediateRef
type ImmediateRef = <T as Immediates>::ImmediateRef
Operation::immediate_mut
and
Operation::immediate
.source§fn immediate(&self) -> Option<&Self::ImmediateRef>
fn immediate(&self) -> Option<&Self::ImmediateRef>
source§fn immediate_mut(&mut self) -> Option<&mut Self::ImmediateRef>
fn immediate_mut(&mut self) -> Option<&mut Self::ImmediateRef>
source§fn into_immediate(self) -> Option<Self::Immediate>
fn into_immediate(self) -> Option<Self::Immediate>
source§fn is_jump(&self) -> bool
fn is_jump(&self) -> bool
source§fn is_jump_target(&self) -> bool
fn is_jump_target(&self) -> bool
source§impl<T> Ord for Op<T>where
T: Immediates + ?Sized,
T::P1: Ord,
T::P2: Ord,
T::P3: Ord,
T::P4: Ord,
T::P5: Ord,
T::P6: Ord,
T::P7: Ord,
T::P8: Ord,
T::P9: Ord,
T::P10: Ord,
T::P11: Ord,
T::P12: Ord,
T::P13: Ord,
T::P14: Ord,
T::P15: Ord,
T::P16: Ord,
T::P17: Ord,
T::P18: Ord,
T::P19: Ord,
T::P20: Ord,
T::P21: Ord,
T::P22: Ord,
T::P23: Ord,
T::P24: Ord,
T::P25: Ord,
T::P26: Ord,
T::P27: Ord,
T::P28: Ord,
T::P29: Ord,
T::P30: Ord,
T::P31: Ord,
T::P32: Ord,
impl<T> Ord for Op<T>where T: Immediates + ?Sized, T::P1: Ord, T::P2: Ord, T::P3: Ord, T::P4: Ord, T::P5: Ord, T::P6: Ord, T::P7: Ord, T::P8: Ord, T::P9: Ord, T::P10: Ord, T::P11: Ord, T::P12: Ord, T::P13: Ord, T::P14: Ord, T::P15: Ord, T::P16: Ord, T::P17: Ord, T::P18: Ord, T::P19: Ord, T::P20: Ord, T::P21: Ord, T::P22: Ord, T::P23: Ord, T::P24: Ord, T::P25: Ord, T::P26: Ord, T::P27: Ord, T::P28: Ord, T::P29: Ord, T::P30: Ord, T::P31: Ord, T::P32: Ord,
source§impl<T> PartialEq<Op<T>> for Op<T>where
T: Immediates + ?Sized,
T::P1: PartialEq,
T::P2: PartialEq,
T::P3: PartialEq,
T::P4: PartialEq,
T::P5: PartialEq,
T::P6: PartialEq,
T::P7: PartialEq,
T::P8: PartialEq,
T::P9: PartialEq,
T::P10: PartialEq,
T::P11: PartialEq,
T::P12: PartialEq,
T::P13: PartialEq,
T::P14: PartialEq,
T::P15: PartialEq,
T::P16: PartialEq,
T::P17: PartialEq,
T::P18: PartialEq,
T::P19: PartialEq,
T::P20: PartialEq,
T::P21: PartialEq,
T::P22: PartialEq,
T::P23: PartialEq,
T::P24: PartialEq,
T::P25: PartialEq,
T::P26: PartialEq,
T::P27: PartialEq,
T::P28: PartialEq,
T::P29: PartialEq,
T::P30: PartialEq,
T::P31: PartialEq,
T::P32: PartialEq,
impl<T> PartialEq<Op<T>> for Op<T>where T: Immediates + ?Sized, T::P1: PartialEq, T::P2: PartialEq, T::P3: PartialEq, T::P4: PartialEq, T::P5: PartialEq, T::P6: PartialEq, T::P7: PartialEq, T::P8: PartialEq, T::P9: PartialEq, T::P10: PartialEq, T::P11: PartialEq, T::P12: PartialEq, T::P13: PartialEq, T::P14: PartialEq, T::P15: PartialEq, T::P16: PartialEq, T::P17: PartialEq, T::P18: PartialEq, T::P19: PartialEq, T::P20: PartialEq, T::P21: PartialEq, T::P22: PartialEq, T::P23: PartialEq, T::P24: PartialEq, T::P25: PartialEq, T::P26: PartialEq, T::P27: PartialEq, T::P28: PartialEq, T::P29: PartialEq, T::P30: PartialEq, T::P31: PartialEq, T::P32: PartialEq,
source§impl<T> PartialOrd<Op<T>> for Op<T>where
T: Immediates + ?Sized,
T::P1: PartialOrd,
T::P2: PartialOrd,
T::P3: PartialOrd,
T::P4: PartialOrd,
T::P5: PartialOrd,
T::P6: PartialOrd,
T::P7: PartialOrd,
T::P8: PartialOrd,
T::P9: PartialOrd,
T::P10: PartialOrd,
T::P11: PartialOrd,
T::P12: PartialOrd,
T::P13: PartialOrd,
T::P14: PartialOrd,
T::P15: PartialOrd,
T::P16: PartialOrd,
T::P17: PartialOrd,
T::P18: PartialOrd,
T::P19: PartialOrd,
T::P20: PartialOrd,
T::P21: PartialOrd,
T::P22: PartialOrd,
T::P23: PartialOrd,
T::P24: PartialOrd,
T::P25: PartialOrd,
T::P26: PartialOrd,
T::P27: PartialOrd,
T::P28: PartialOrd,
T::P29: PartialOrd,
T::P30: PartialOrd,
T::P31: PartialOrd,
T::P32: PartialOrd,
impl<T> PartialOrd<Op<T>> for Op<T>where T: Immediates + ?Sized, T::P1: PartialOrd, T::P2: PartialOrd, T::P3: PartialOrd, T::P4: PartialOrd, T::P5: PartialOrd, T::P6: PartialOrd, T::P7: PartialOrd, T::P8: PartialOrd, T::P9: PartialOrd, T::P10: PartialOrd, T::P11: PartialOrd, T::P12: PartialOrd, T::P13: PartialOrd, T::P14: PartialOrd, T::P15: PartialOrd, T::P16: PartialOrd, T::P17: PartialOrd, T::P18: PartialOrd, T::P19: PartialOrd, T::P20: PartialOrd, T::P21: PartialOrd, T::P22: PartialOrd, T::P23: PartialOrd, T::P24: PartialOrd, T::P25: PartialOrd, T::P26: PartialOrd, T::P27: PartialOrd, T::P28: PartialOrd, T::P29: PartialOrd, T::P30: PartialOrd, T::P31: PartialOrd, T::P32: PartialOrd,
1.0.0 · source§fn le(&self, other: &Rhs) -> bool
fn le(&self, other: &Rhs) -> bool
self
and other
) and is used by the <=
operator. Read more