Enum etk_ops::shanghai::Op

source ·
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,

source

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

pub fn code(&self) -> Op<()>

Returns the opcode of this operation.

An opcode is the part of the operation that specifies the which operation to perform (for example 0x00 for stop.)

source

pub fn size(&self) -> usize

Returns the total length of this operation, including its immediate.

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>,

source

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<()>

source

pub fn push_for(n: u128) -> Option<Self>

Create the smallest push instruction capable of representing n.

source

pub fn push(sz: usize) -> Option<Self>

Create a new push instruction with the given immediate size.

source

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.

source

pub fn upsize(self) -> Option<Self>

Converts a push instruction to the next larger push size.

For example, a push2 will become a push3.

Panics

This function panics if self is not a push instruction.

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,

source§

fn clone(&self) -> Self

Returns a copy of the value. Read more
source§

fn clone_from(&mut self, _source: &Self)

Performs copy-assignment from source. Read more
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,

source§

fn fmt(&self, formatter: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Display for Op<()>

source§

fn fmt(&self, fmt: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl<T> From<Add> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: Add) -> Self

Converts to this type from the input type.
source§

impl<T> From<AddMod> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: AddMod) -> Self

Converts to this type from the input type.
source§

impl<T> From<Address> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: Address) -> Self

Converts to this type from the input type.
source§

impl<T> From<And> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: And) -> Self

Converts to this type from the input type.
source§

impl<T> From<Balance> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: Balance) -> Self

Converts to this type from the input type.
source§

impl<T> From<BaseFee> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: BaseFee) -> Self

Converts to this type from the input type.
source§

impl<T> From<BlockHash> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: BlockHash) -> Self

Converts to this type from the input type.
source§

impl<T> From<Byte> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: Byte) -> Self

Converts to this type from the input type.
source§

impl<T> From<Call> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: Call) -> Self

Converts to this type from the input type.
source§

impl<T> From<CallCode> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: CallCode) -> Self

Converts to this type from the input type.
source§

impl<T> From<CallDataCopy> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: CallDataCopy) -> Self

Converts to this type from the input type.
source§

impl<T> From<CallDataLoad> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: CallDataLoad) -> Self

Converts to this type from the input type.
source§

impl<T> From<CallDataSize> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: CallDataSize) -> Self

Converts to this type from the input type.
source§

impl<T> From<CallValue> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: CallValue) -> Self

Converts to this type from the input type.
source§

impl<T> From<Caller> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: Caller) -> Self

Converts to this type from the input type.
source§

impl<T> From<ChainId> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: ChainId) -> Self

Converts to this type from the input type.
source§

impl<T> From<CodeCopy> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: CodeCopy) -> Self

Converts to this type from the input type.
source§

impl<T> From<CodeSize> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: CodeSize) -> Self

Converts to this type from the input type.
source§

impl<T> From<Coinbase> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: Coinbase) -> Self

Converts to this type from the input type.
source§

impl<T> From<Create> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: Create) -> Self

Converts to this type from the input type.
source§

impl<T> From<Create2> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: Create2) -> Self

Converts to this type from the input type.
source§

impl<T> From<DelegateCall> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: DelegateCall) -> Self

Converts to this type from the input type.
source§

impl<T> From<Difficulty> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: Difficulty) -> Self

Converts to this type from the input type.
source§

impl<T> From<Div> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: Div) -> Self

Converts to this type from the input type.
source§

impl<T> From<Dup1> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: Dup1) -> Self

Converts to this type from the input type.
source§

impl<T> From<Dup10> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: Dup10) -> Self

Converts to this type from the input type.
source§

impl<T> From<Dup11> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: Dup11) -> Self

Converts to this type from the input type.
source§

impl<T> From<Dup12> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: Dup12) -> Self

Converts to this type from the input type.
source§

impl<T> From<Dup13> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: Dup13) -> Self

Converts to this type from the input type.
source§

impl<T> From<Dup14> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: Dup14) -> Self

Converts to this type from the input type.
source§

impl<T> From<Dup15> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: Dup15) -> Self

Converts to this type from the input type.
source§

impl<T> From<Dup16> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: Dup16) -> Self

Converts to this type from the input type.
source§

impl<T> From<Dup2> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: Dup2) -> Self

Converts to this type from the input type.
source§

impl<T> From<Dup3> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: Dup3) -> Self

Converts to this type from the input type.
source§

impl<T> From<Dup4> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: Dup4) -> Self

Converts to this type from the input type.
source§

impl<T> From<Dup5> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: Dup5) -> Self

Converts to this type from the input type.
source§

impl<T> From<Dup6> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: Dup6) -> Self

Converts to this type from the input type.
source§

impl<T> From<Dup7> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: Dup7) -> Self

Converts to this type from the input type.
source§

impl<T> From<Dup8> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: Dup8) -> Self

Converts to this type from the input type.
source§

impl<T> From<Dup9> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: Dup9) -> Self

Converts to this type from the input type.
source§

impl<T> From<Eq> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: Eq) -> Self

Converts to this type from the input type.
source§

impl<T> From<Exp> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: Exp) -> Self

Converts to this type from the input type.
source§

impl<T> From<ExtCodeCopy> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: ExtCodeCopy) -> Self

Converts to this type from the input type.
source§

impl<T> From<ExtCodeHash> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: ExtCodeHash) -> Self

Converts to this type from the input type.
source§

impl<T> From<ExtCodeSize> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: ExtCodeSize) -> Self

Converts to this type from the input type.
source§

impl<T> From<Gas> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: Gas) -> Self

Converts to this type from the input type.
source§

impl<T> From<GasLimit> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: GasLimit) -> Self

Converts to this type from the input type.
source§

impl<T> From<GasPrice> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: GasPrice) -> Self

Converts to this type from the input type.
source§

impl<T> From<GetPc> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: GetPc) -> Self

Converts to this type from the input type.
source§

impl<T> From<Gt> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: Gt) -> Self

Converts to this type from the input type.
source§

impl<T> From<Invalid> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: Invalid) -> Self

Converts to this type from the input type.
source§

impl<T> From<Invalid0c> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: Invalid0c) -> Self

Converts to this type from the input type.
source§

impl<T> From<Invalid0d> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: Invalid0d) -> Self

Converts to this type from the input type.
source§

impl<T> From<Invalid0e> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: Invalid0e) -> Self

Converts to this type from the input type.
source§

impl<T> From<Invalid0f> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: Invalid0f) -> Self

Converts to this type from the input type.
source§

impl<T> From<Invalid1e> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: Invalid1e) -> Self

Converts to this type from the input type.
source§

impl<T> From<Invalid1f> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: Invalid1f) -> Self

Converts to this type from the input type.
source§

impl<T> From<Invalid21> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: Invalid21) -> Self

Converts to this type from the input type.
source§

impl<T> From<Invalid22> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: Invalid22) -> Self

Converts to this type from the input type.
source§

impl<T> From<Invalid23> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: Invalid23) -> Self

Converts to this type from the input type.
source§

impl<T> From<Invalid24> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: Invalid24) -> Self

Converts to this type from the input type.
source§

impl<T> From<Invalid25> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: Invalid25) -> Self

Converts to this type from the input type.
source§

impl<T> From<Invalid26> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: Invalid26) -> Self

Converts to this type from the input type.
source§

impl<T> From<Invalid27> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: Invalid27) -> Self

Converts to this type from the input type.
source§

impl<T> From<Invalid28> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: Invalid28) -> Self

Converts to this type from the input type.
source§

impl<T> From<Invalid29> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: Invalid29) -> Self

Converts to this type from the input type.
source§

impl<T> From<Invalid2a> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: Invalid2a) -> Self

Converts to this type from the input type.
source§

impl<T> From<Invalid2b> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: Invalid2b) -> Self

Converts to this type from the input type.
source§

impl<T> From<Invalid2c> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: Invalid2c) -> Self

Converts to this type from the input type.
source§

impl<T> From<Invalid2d> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: Invalid2d) -> Self

Converts to this type from the input type.
source§

impl<T> From<Invalid2e> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: Invalid2e) -> Self

Converts to this type from the input type.
source§

impl<T> From<Invalid2f> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: Invalid2f) -> Self

Converts to this type from the input type.
source§

impl<T> From<Invalid49> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: Invalid49) -> Self

Converts to this type from the input type.
source§

impl<T> From<Invalid4a> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: Invalid4a) -> Self

Converts to this type from the input type.
source§

impl<T> From<Invalid4b> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: Invalid4b) -> Self

Converts to this type from the input type.
source§

impl<T> From<Invalid4c> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: Invalid4c) -> Self

Converts to this type from the input type.
source§

impl<T> From<Invalid4d> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: Invalid4d) -> Self

Converts to this type from the input type.
source§

impl<T> From<Invalid4e> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: Invalid4e) -> Self

Converts to this type from the input type.
source§

impl<T> From<Invalid4f> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: Invalid4f) -> Self

Converts to this type from the input type.
source§

impl<T> From<Invalid5c> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: Invalid5c) -> Self

Converts to this type from the input type.
source§

impl<T> From<Invalid5d> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: Invalid5d) -> Self

Converts to this type from the input type.
source§

impl<T> From<Invalid5e> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: Invalid5e) -> Self

Converts to this type from the input type.
source§

impl<T> From<InvalidA5> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: InvalidA5) -> Self

Converts to this type from the input type.
source§

impl<T> From<InvalidA6> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: InvalidA6) -> Self

Converts to this type from the input type.
source§

impl<T> From<InvalidA7> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: InvalidA7) -> Self

Converts to this type from the input type.
source§

impl<T> From<InvalidA8> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: InvalidA8) -> Self

Converts to this type from the input type.
source§

impl<T> From<InvalidA9> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: InvalidA9) -> Self

Converts to this type from the input type.
source§

impl<T> From<InvalidAa> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: InvalidAa) -> Self

Converts to this type from the input type.
source§

impl<T> From<InvalidAb> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: InvalidAb) -> Self

Converts to this type from the input type.
source§

impl<T> From<InvalidAc> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: InvalidAc) -> Self

Converts to this type from the input type.
source§

impl<T> From<InvalidAd> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: InvalidAd) -> Self

Converts to this type from the input type.
source§

impl<T> From<InvalidAe> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: InvalidAe) -> Self

Converts to this type from the input type.
source§

impl<T> From<InvalidAf> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: InvalidAf) -> Self

Converts to this type from the input type.
source§

impl<T> From<InvalidB0> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: InvalidB0) -> Self

Converts to this type from the input type.
source§

impl<T> From<InvalidB1> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: InvalidB1) -> Self

Converts to this type from the input type.
source§

impl<T> From<InvalidB2> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: InvalidB2) -> Self

Converts to this type from the input type.
source§

impl<T> From<InvalidB3> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: InvalidB3) -> Self

Converts to this type from the input type.
source§

impl<T> From<InvalidB4> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: InvalidB4) -> Self

Converts to this type from the input type.
source§

impl<T> From<InvalidB5> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: InvalidB5) -> Self

Converts to this type from the input type.
source§

impl<T> From<InvalidB6> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: InvalidB6) -> Self

Converts to this type from the input type.
source§

impl<T> From<InvalidB7> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: InvalidB7) -> Self

Converts to this type from the input type.
source§

impl<T> From<InvalidB8> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: InvalidB8) -> Self

Converts to this type from the input type.
source§

impl<T> From<InvalidB9> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: InvalidB9) -> Self

Converts to this type from the input type.
source§

impl<T> From<InvalidBa> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: InvalidBa) -> Self

Converts to this type from the input type.
source§

impl<T> From<InvalidBb> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: InvalidBb) -> Self

Converts to this type from the input type.
source§

impl<T> From<InvalidBc> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: InvalidBc) -> Self

Converts to this type from the input type.
source§

impl<T> From<InvalidBd> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: InvalidBd) -> Self

Converts to this type from the input type.
source§

impl<T> From<InvalidBe> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: InvalidBe) -> Self

Converts to this type from the input type.
source§

impl<T> From<InvalidBf> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: InvalidBf) -> Self

Converts to this type from the input type.
source§

impl<T> From<InvalidC0> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: InvalidC0) -> Self

Converts to this type from the input type.
source§

impl<T> From<InvalidC1> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: InvalidC1) -> Self

Converts to this type from the input type.
source§

impl<T> From<InvalidC2> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: InvalidC2) -> Self

Converts to this type from the input type.
source§

impl<T> From<InvalidC3> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: InvalidC3) -> Self

Converts to this type from the input type.
source§

impl<T> From<InvalidC4> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: InvalidC4) -> Self

Converts to this type from the input type.
source§

impl<T> From<InvalidC5> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: InvalidC5) -> Self

Converts to this type from the input type.
source§

impl<T> From<InvalidC6> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: InvalidC6) -> Self

Converts to this type from the input type.
source§

impl<T> From<InvalidC7> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: InvalidC7) -> Self

Converts to this type from the input type.
source§

impl<T> From<InvalidC8> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: InvalidC8) -> Self

Converts to this type from the input type.
source§

impl<T> From<InvalidC9> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: InvalidC9) -> Self

Converts to this type from the input type.
source§

impl<T> From<InvalidCa> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: InvalidCa) -> Self

Converts to this type from the input type.
source§

impl<T> From<InvalidCb> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: InvalidCb) -> Self

Converts to this type from the input type.
source§

impl<T> From<InvalidCc> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: InvalidCc) -> Self

Converts to this type from the input type.
source§

impl<T> From<InvalidCd> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: InvalidCd) -> Self

Converts to this type from the input type.
source§

impl<T> From<InvalidCe> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: InvalidCe) -> Self

Converts to this type from the input type.
source§

impl<T> From<InvalidCf> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: InvalidCf) -> Self

Converts to this type from the input type.
source§

impl<T> From<InvalidD0> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: InvalidD0) -> Self

Converts to this type from the input type.
source§

impl<T> From<InvalidD1> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: InvalidD1) -> Self

Converts to this type from the input type.
source§

impl<T> From<InvalidD2> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: InvalidD2) -> Self

Converts to this type from the input type.
source§

impl<T> From<InvalidD3> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: InvalidD3) -> Self

Converts to this type from the input type.
source§

impl<T> From<InvalidD4> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: InvalidD4) -> Self

Converts to this type from the input type.
source§

impl<T> From<InvalidD5> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: InvalidD5) -> Self

Converts to this type from the input type.
source§

impl<T> From<InvalidD6> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: InvalidD6) -> Self

Converts to this type from the input type.
source§

impl<T> From<InvalidD7> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: InvalidD7) -> Self

Converts to this type from the input type.
source§

impl<T> From<InvalidD8> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: InvalidD8) -> Self

Converts to this type from the input type.
source§

impl<T> From<InvalidD9> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: InvalidD9) -> Self

Converts to this type from the input type.
source§

impl<T> From<InvalidDa> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: InvalidDa) -> Self

Converts to this type from the input type.
source§

impl<T> From<InvalidDb> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: InvalidDb) -> Self

Converts to this type from the input type.
source§

impl<T> From<InvalidDc> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: InvalidDc) -> Self

Converts to this type from the input type.
source§

impl<T> From<InvalidDd> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: InvalidDd) -> Self

Converts to this type from the input type.
source§

impl<T> From<InvalidDe> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: InvalidDe) -> Self

Converts to this type from the input type.
source§

impl<T> From<InvalidDf> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: InvalidDf) -> Self

Converts to this type from the input type.
source§

impl<T> From<InvalidE0> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: InvalidE0) -> Self

Converts to this type from the input type.
source§

impl<T> From<InvalidE1> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: InvalidE1) -> Self

Converts to this type from the input type.
source§

impl<T> From<InvalidE2> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: InvalidE2) -> Self

Converts to this type from the input type.
source§

impl<T> From<InvalidE3> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: InvalidE3) -> Self

Converts to this type from the input type.
source§

impl<T> From<InvalidE4> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: InvalidE4) -> Self

Converts to this type from the input type.
source§

impl<T> From<InvalidE5> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: InvalidE5) -> Self

Converts to this type from the input type.
source§

impl<T> From<InvalidE6> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: InvalidE6) -> Self

Converts to this type from the input type.
source§

impl<T> From<InvalidE7> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: InvalidE7) -> Self

Converts to this type from the input type.
source§

impl<T> From<InvalidE8> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: InvalidE8) -> Self

Converts to this type from the input type.
source§

impl<T> From<InvalidE9> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: InvalidE9) -> Self

Converts to this type from the input type.
source§

impl<T> From<InvalidEa> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: InvalidEa) -> Self

Converts to this type from the input type.
source§

impl<T> From<InvalidEb> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: InvalidEb) -> Self

Converts to this type from the input type.
source§

impl<T> From<InvalidEc> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: InvalidEc) -> Self

Converts to this type from the input type.
source§

impl<T> From<InvalidEd> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: InvalidEd) -> Self

Converts to this type from the input type.
source§

impl<T> From<InvalidEe> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: InvalidEe) -> Self

Converts to this type from the input type.
source§

impl<T> From<InvalidEf> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: InvalidEf) -> Self

Converts to this type from the input type.
source§

impl<T> From<InvalidF6> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: InvalidF6) -> Self

Converts to this type from the input type.
source§

impl<T> From<InvalidF7> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: InvalidF7) -> Self

Converts to this type from the input type.
source§

impl<T> From<InvalidF8> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: InvalidF8) -> Self

Converts to this type from the input type.
source§

impl<T> From<InvalidF9> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: InvalidF9) -> Self

Converts to this type from the input type.
source§

impl<T> From<InvalidFb> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: InvalidFb) -> Self

Converts to this type from the input type.
source§

impl<T> From<InvalidFc> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: InvalidFc) -> Self

Converts to this type from the input type.
source§

impl<T> From<IsZero> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: IsZero) -> Self

Converts to this type from the input type.
source§

impl<T> From<Jump> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: Jump) -> Self

Converts to this type from the input type.
source§

impl<T> From<JumpDest> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: JumpDest) -> Self

Converts to this type from the input type.
source§

impl<T> From<JumpI> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: JumpI) -> Self

Converts to this type from the input type.
source§

impl<T> From<Keccak256> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: Keccak256) -> Self

Converts to this type from the input type.
source§

impl<T> From<Log0> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: Log0) -> Self

Converts to this type from the input type.
source§

impl<T> From<Log1> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: Log1) -> Self

Converts to this type from the input type.
source§

impl<T> From<Log2> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: Log2) -> Self

Converts to this type from the input type.
source§

impl<T> From<Log3> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: Log3) -> Self

Converts to this type from the input type.
source§

impl<T> From<Log4> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: Log4) -> Self

Converts to this type from the input type.
source§

impl<T> From<Lt> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: Lt) -> Self

Converts to this type from the input type.
source§

impl<T> From<MLoad> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: MLoad) -> Self

Converts to this type from the input type.
source§

impl<T> From<MSize> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: MSize) -> Self

Converts to this type from the input type.
source§

impl<T> From<MStore> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: MStore) -> Self

Converts to this type from the input type.
source§

impl<T> From<MStore8> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: MStore8) -> Self

Converts to this type from the input type.
source§

impl<T> From<Mod> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: Mod) -> Self

Converts to this type from the input type.
source§

impl<T> From<Mul> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: Mul) -> Self

Converts to this type from the input type.
source§

impl<T> From<MulMod> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: MulMod) -> Self

Converts to this type from the input type.
source§

impl<T> From<Not> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: Not) -> Self

Converts to this type from the input type.
source§

impl<T> From<Number> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: Number) -> Self

Converts to this type from the input type.
source§

impl From<Op<()>> for u8

source§

fn from(op: Op<()>) -> u8

Converts to this type from the input type.
source§

impl<T> From<Or> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: Or) -> Self

Converts to this type from the input type.
source§

impl<T> From<Origin> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: Origin) -> Self

Converts to this type from the input type.
source§

impl<T> From<Pop> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: Pop) -> Self

Converts to this type from the input type.
source§

impl<T> From<Push0> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: Push0) -> Self

Converts to this type from the input type.
source§

impl<I, T> From<Push1<I>> for Op<T>where I: Immediate<1usize>, T: ?Sized + Immediates<P1 = I>,

source§

fn from(op: Push1<I>) -> Self

Converts to this type from the input type.
source§

impl<I, T> From<Push10<I>> for Op<T>where I: Immediate<10usize>, T: ?Sized + Immediates<P10 = I>,

source§

fn from(op: Push10<I>) -> Self

Converts to this type from the input type.
source§

impl<I, T> From<Push11<I>> for Op<T>where I: Immediate<11usize>, T: ?Sized + Immediates<P11 = I>,

source§

fn from(op: Push11<I>) -> Self

Converts to this type from the input type.
source§

impl<I, T> From<Push12<I>> for Op<T>where I: Immediate<12usize>, T: ?Sized + Immediates<P12 = I>,

source§

fn from(op: Push12<I>) -> Self

Converts to this type from the input type.
source§

impl<I, T> From<Push13<I>> for Op<T>where I: Immediate<13usize>, T: ?Sized + Immediates<P13 = I>,

source§

fn from(op: Push13<I>) -> Self

Converts to this type from the input type.
source§

impl<I, T> From<Push14<I>> for Op<T>where I: Immediate<14usize>, T: ?Sized + Immediates<P14 = I>,

source§

fn from(op: Push14<I>) -> Self

Converts to this type from the input type.
source§

impl<I, T> From<Push15<I>> for Op<T>where I: Immediate<15usize>, T: ?Sized + Immediates<P15 = I>,

source§

fn from(op: Push15<I>) -> Self

Converts to this type from the input type.
source§

impl<I, T> From<Push16<I>> for Op<T>where I: Immediate<16usize>, T: ?Sized + Immediates<P16 = I>,

source§

fn from(op: Push16<I>) -> Self

Converts to this type from the input type.
source§

impl<I, T> From<Push17<I>> for Op<T>where I: Immediate<17usize>, T: ?Sized + Immediates<P17 = I>,

source§

fn from(op: Push17<I>) -> Self

Converts to this type from the input type.
source§

impl<I, T> From<Push18<I>> for Op<T>where I: Immediate<18usize>, T: ?Sized + Immediates<P18 = I>,

source§

fn from(op: Push18<I>) -> Self

Converts to this type from the input type.
source§

impl<I, T> From<Push19<I>> for Op<T>where I: Immediate<19usize>, T: ?Sized + Immediates<P19 = I>,

source§

fn from(op: Push19<I>) -> Self

Converts to this type from the input type.
source§

impl<I, T> From<Push2<I>> for Op<T>where I: Immediate<2usize>, T: ?Sized + Immediates<P2 = I>,

source§

fn from(op: Push2<I>) -> Self

Converts to this type from the input type.
source§

impl<I, T> From<Push20<I>> for Op<T>where I: Immediate<20usize>, T: ?Sized + Immediates<P20 = I>,

source§

fn from(op: Push20<I>) -> Self

Converts to this type from the input type.
source§

impl<I, T> From<Push21<I>> for Op<T>where I: Immediate<21usize>, T: ?Sized + Immediates<P21 = I>,

source§

fn from(op: Push21<I>) -> Self

Converts to this type from the input type.
source§

impl<I, T> From<Push22<I>> for Op<T>where I: Immediate<22usize>, T: ?Sized + Immediates<P22 = I>,

source§

fn from(op: Push22<I>) -> Self

Converts to this type from the input type.
source§

impl<I, T> From<Push23<I>> for Op<T>where I: Immediate<23usize>, T: ?Sized + Immediates<P23 = I>,

source§

fn from(op: Push23<I>) -> Self

Converts to this type from the input type.
source§

impl<I, T> From<Push24<I>> for Op<T>where I: Immediate<24usize>, T: ?Sized + Immediates<P24 = I>,

source§

fn from(op: Push24<I>) -> Self

Converts to this type from the input type.
source§

impl<I, T> From<Push25<I>> for Op<T>where I: Immediate<25usize>, T: ?Sized + Immediates<P25 = I>,

source§

fn from(op: Push25<I>) -> Self

Converts to this type from the input type.
source§

impl<I, T> From<Push26<I>> for Op<T>where I: Immediate<26usize>, T: ?Sized + Immediates<P26 = I>,

source§

fn from(op: Push26<I>) -> Self

Converts to this type from the input type.
source§

impl<I, T> From<Push27<I>> for Op<T>where I: Immediate<27usize>, T: ?Sized + Immediates<P27 = I>,

source§

fn from(op: Push27<I>) -> Self

Converts to this type from the input type.
source§

impl<I, T> From<Push28<I>> for Op<T>where I: Immediate<28usize>, T: ?Sized + Immediates<P28 = I>,

source§

fn from(op: Push28<I>) -> Self

Converts to this type from the input type.
source§

impl<I, T> From<Push29<I>> for Op<T>where I: Immediate<29usize>, T: ?Sized + Immediates<P29 = I>,

source§

fn from(op: Push29<I>) -> Self

Converts to this type from the input type.
source§

impl<I, T> From<Push3<I>> for Op<T>where I: Immediate<3usize>, T: ?Sized + Immediates<P3 = I>,

source§

fn from(op: Push3<I>) -> Self

Converts to this type from the input type.
source§

impl<I, T> From<Push30<I>> for Op<T>where I: Immediate<30usize>, T: ?Sized + Immediates<P30 = I>,

source§

fn from(op: Push30<I>) -> Self

Converts to this type from the input type.
source§

impl<I, T> From<Push31<I>> for Op<T>where I: Immediate<31usize>, T: ?Sized + Immediates<P31 = I>,

source§

fn from(op: Push31<I>) -> Self

Converts to this type from the input type.
source§

impl<I, T> From<Push32<I>> for Op<T>where I: Immediate<32usize>, T: ?Sized + Immediates<P32 = I>,

source§

fn from(op: Push32<I>) -> Self

Converts to this type from the input type.
source§

impl<I, T> From<Push4<I>> for Op<T>where I: Immediate<4usize>, T: ?Sized + Immediates<P4 = I>,

source§

fn from(op: Push4<I>) -> Self

Converts to this type from the input type.
source§

impl<I, T> From<Push5<I>> for Op<T>where I: Immediate<5usize>, T: ?Sized + Immediates<P5 = I>,

source§

fn from(op: Push5<I>) -> Self

Converts to this type from the input type.
source§

impl<I, T> From<Push6<I>> for Op<T>where I: Immediate<6usize>, T: ?Sized + Immediates<P6 = I>,

source§

fn from(op: Push6<I>) -> Self

Converts to this type from the input type.
source§

impl<I, T> From<Push7<I>> for Op<T>where I: Immediate<7usize>, T: ?Sized + Immediates<P7 = I>,

source§

fn from(op: Push7<I>) -> Self

Converts to this type from the input type.
source§

impl<I, T> From<Push8<I>> for Op<T>where I: Immediate<8usize>, T: ?Sized + Immediates<P8 = I>,

source§

fn from(op: Push8<I>) -> Self

Converts to this type from the input type.
source§

impl<I, T> From<Push9<I>> for Op<T>where I: Immediate<9usize>, T: ?Sized + Immediates<P9 = I>,

source§

fn from(op: Push9<I>) -> Self

Converts to this type from the input type.
source§

impl<T> From<Return> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: Return) -> Self

Converts to this type from the input type.
source§

impl<T> From<ReturnDataCopy> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: ReturnDataCopy) -> Self

Converts to this type from the input type.
source§

impl<T> From<ReturnDataSize> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: ReturnDataSize) -> Self

Converts to this type from the input type.
source§

impl<T> From<Revert> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: Revert) -> Self

Converts to this type from the input type.
source§

impl<T> From<SDiv> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: SDiv) -> Self

Converts to this type from the input type.
source§

impl<T> From<SGt> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: SGt) -> Self

Converts to this type from the input type.
source§

impl<T> From<SLoad> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: SLoad) -> Self

Converts to this type from the input type.
source§

impl<T> From<SLt> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: SLt) -> Self

Converts to this type from the input type.
source§

impl<T> From<SMod> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: SMod) -> Self

Converts to this type from the input type.
source§

impl<T> From<SStore> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: SStore) -> Self

Converts to this type from the input type.
source§

impl<T> From<Sar> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: Sar) -> Self

Converts to this type from the input type.
source§

impl<T> From<SelfBalance> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: SelfBalance) -> Self

Converts to this type from the input type.
source§

impl<T> From<SelfDestruct> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: SelfDestruct) -> Self

Converts to this type from the input type.
source§

impl<T> From<Shl> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: Shl) -> Self

Converts to this type from the input type.
source§

impl<T> From<Shr> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: Shr) -> Self

Converts to this type from the input type.
source§

impl<T> From<SignExtend> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: SignExtend) -> Self

Converts to this type from the input type.
source§

impl<T> From<StaticCall> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: StaticCall) -> Self

Converts to this type from the input type.
source§

impl<T> From<Stop> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: Stop) -> Self

Converts to this type from the input type.
source§

impl<T> From<Sub> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: Sub) -> Self

Converts to this type from the input type.
source§

impl<T> From<Swap1> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: Swap1) -> Self

Converts to this type from the input type.
source§

impl<T> From<Swap10> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: Swap10) -> Self

Converts to this type from the input type.
source§

impl<T> From<Swap11> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: Swap11) -> Self

Converts to this type from the input type.
source§

impl<T> From<Swap12> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: Swap12) -> Self

Converts to this type from the input type.
source§

impl<T> From<Swap13> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: Swap13) -> Self

Converts to this type from the input type.
source§

impl<T> From<Swap14> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: Swap14) -> Self

Converts to this type from the input type.
source§

impl<T> From<Swap15> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: Swap15) -> Self

Converts to this type from the input type.
source§

impl<T> From<Swap16> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: Swap16) -> Self

Converts to this type from the input type.
source§

impl<T> From<Swap2> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: Swap2) -> Self

Converts to this type from the input type.
source§

impl<T> From<Swap3> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: Swap3) -> Self

Converts to this type from the input type.
source§

impl<T> From<Swap4> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: Swap4) -> Self

Converts to this type from the input type.
source§

impl<T> From<Swap5> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: Swap5) -> Self

Converts to this type from the input type.
source§

impl<T> From<Swap6> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: Swap6) -> Self

Converts to this type from the input type.
source§

impl<T> From<Swap7> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: Swap7) -> Self

Converts to this type from the input type.
source§

impl<T> From<Swap8> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: Swap8) -> Self

Converts to this type from the input type.
source§

impl<T> From<Swap9> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: Swap9) -> Self

Converts to this type from the input type.
source§

impl<T> From<Timestamp> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: Timestamp) -> Self

Converts to this type from the input type.
source§

impl<T> From<Xor> for Op<T>where T: ?Sized + Immediates,

source§

fn from(op: Xor) -> Self

Converts to this type from the input type.
source§

impl From<u8> for Op<()>

source§

fn from(opcode: u8) -> Self

Converts to this type from the input type.
source§

impl FromStr for Op<()>

§

type Err = FromStrError

The associated error which can be returned from parsing.
source§

fn from_str(mnemonic: &str) -> Result<Self, Self::Err>

Parses a string s to return a value of this type. Read more
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,

source§

fn hash<H: Hasher>(&self, state: &mut H)

Feeds this value into the given Hasher. Read more
1.3.0 · source§

fn hash_slice<H>(data: &[Self], state: &mut H)where H: Hasher, Self: Sized,

Feeds a slice of this type into the given Hasher. Read more
source§

impl<T> Operation for Op<T>where T: Immediates + ?Sized,

§

type Code = Op<()>

The return type of Operation::code.
§

type Immediate = <T as Immediates>::Immediate

The type of the immediate argument for this operation.
§

type ImmediateRef = <T as Immediates>::ImmediateRef

The return root type of Operation::immediate_mut and Operation::immediate.
source§

fn immediate(&self) -> Option<&Self::ImmediateRef>

Get a shared reference to the immediate argument of this operation, if one exists.
source§

fn immediate_mut(&mut self) -> Option<&mut Self::ImmediateRef>

Get a mutable reference to the immediate argument of this operation, if one exists.
source§

fn into_immediate(self) -> Option<Self::Immediate>

Consume this operation and return its immediate argument, if one exists.
source§

fn extra_len(&self) -> usize

Length of immediate argument.
source§

fn mnemonic(&self) -> &str

Human-readable name for this operation.
source§

fn code(&self) -> Self::Code

The action (opcode) of this operation, without any immediates.
source§

fn is_jump(&self) -> bool

Returns true if the current instruction changes the program counter (other than incrementing it.)
source§

fn is_jump_target(&self) -> bool

Returns true if the current instruction is a valid destination for jumps.
source§

fn is_exit(&self) -> bool

Returns true if the current instruction causes the EVM to stop executing the contract.
source§

fn pops(&self) -> usize

How many stack elements this instruction pops.
source§

fn pushes(&self) -> usize

How many stack elements this instruction pushes.
source§

fn code_byte(&self) -> u8

The byte (opcode) that indicates this operation.
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,

source§

fn cmp(&self, other: &Self) -> Ordering

This method returns an Ordering between self and other. Read more
1.21.0 · source§

fn max(self, other: Self) -> Selfwhere Self: Sized,

Compares and returns the maximum of two values. Read more
1.21.0 · source§

fn min(self, other: Self) -> Selfwhere Self: Sized,

Compares and returns the minimum of two values. Read more
1.50.0 · source§

fn clamp(self, min: Self, max: Self) -> Selfwhere Self: Sized + PartialOrd<Self>,

Restrict a value to a certain interval. Read more
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,

source§

fn eq(&self, other: &Self) -> bool

This method tests for self and other values to be equal, and is used by ==.
1.0.0 · source§

fn ne(&self, other: &Rhs) -> bool

This method tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
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,

source§

fn partial_cmp(&self, other: &Self) -> Option<Ordering>

This method returns an ordering between self and other values if one exists. Read more
1.0.0 · source§

fn lt(&self, other: &Rhs) -> bool

This method tests less than (for self and other) and is used by the < operator. Read more
1.0.0 · source§

fn le(&self, other: &Rhs) -> bool

This method tests less than or equal to (for self and other) and is used by the <= operator. Read more
1.0.0 · source§

fn gt(&self, other: &Rhs) -> bool

This method tests greater than (for self and other) and is used by the > operator. Read more
1.0.0 · source§

fn ge(&self, other: &Rhs) -> bool

This method tests greater than or equal to (for self and other) and is used by the >= operator. Read more
source§

impl<T> Copy for Op<T>where T: Immediates + ?Sized, T::P1: Copy, T::P2: Copy, T::P3: Copy, T::P4: Copy, T::P5: Copy, T::P6: Copy, T::P7: Copy, T::P8: Copy, T::P9: Copy, T::P10: Copy, T::P11: Copy, T::P12: Copy, T::P13: Copy, T::P14: Copy, T::P15: Copy, T::P16: Copy, T::P17: Copy, T::P18: Copy, T::P19: Copy, T::P20: Copy, T::P21: Copy, T::P22: Copy, T::P23: Copy, T::P24: Copy, T::P25: Copy, T::P26: Copy, T::P27: Copy, T::P28: Copy, T::P29: Copy, T::P30: Copy, T::P31: Copy, T::P32: Copy,

source§

impl<T> Eq for Op<T>where T: Immediates + ?Sized, T::P1: Eq, T::P2: Eq, T::P3: Eq, T::P4: Eq, T::P5: Eq, T::P6: Eq, T::P7: Eq, T::P8: Eq, T::P9: Eq, T::P10: Eq, T::P11: Eq, T::P12: Eq, T::P13: Eq, T::P14: Eq, T::P15: Eq, T::P16: Eq, T::P17: Eq, T::P18: Eq, T::P19: Eq, T::P20: Eq, T::P21: Eq, T::P22: Eq, T::P23: Eq, T::P24: Eq, T::P25: Eq, T::P26: Eq, T::P27: Eq, T::P28: Eq, T::P29: Eq, T::P30: Eq, T::P31: Eq, T::P32: Eq,

Auto Trait Implementations§

§

impl<T: ?Sized> RefUnwindSafe for Op<T>where <T as Immediates>::P1: RefUnwindSafe, <T as Immediates>::P10: RefUnwindSafe, <T as Immediates>::P11: RefUnwindSafe, <T as Immediates>::P12: RefUnwindSafe, <T as Immediates>::P13: RefUnwindSafe, <T as Immediates>::P14: RefUnwindSafe, <T as Immediates>::P15: RefUnwindSafe, <T as Immediates>::P16: RefUnwindSafe, <T as Immediates>::P17: RefUnwindSafe, <T as Immediates>::P18: RefUnwindSafe, <T as Immediates>::P19: RefUnwindSafe, <T as Immediates>::P2: RefUnwindSafe, <T as Immediates>::P20: RefUnwindSafe, <T as Immediates>::P21: RefUnwindSafe, <T as Immediates>::P22: RefUnwindSafe, <T as Immediates>::P23: RefUnwindSafe, <T as Immediates>::P24: RefUnwindSafe, <T as Immediates>::P25: RefUnwindSafe, <T as Immediates>::P26: RefUnwindSafe, <T as Immediates>::P27: RefUnwindSafe, <T as Immediates>::P28: RefUnwindSafe, <T as Immediates>::P29: RefUnwindSafe, <T as Immediates>::P3: RefUnwindSafe, <T as Immediates>::P30: RefUnwindSafe, <T as Immediates>::P31: RefUnwindSafe, <T as Immediates>::P32: RefUnwindSafe, <T as Immediates>::P4: RefUnwindSafe, <T as Immediates>::P5: RefUnwindSafe, <T as Immediates>::P6: RefUnwindSafe, <T as Immediates>::P7: RefUnwindSafe, <T as Immediates>::P8: RefUnwindSafe, <T as Immediates>::P9: RefUnwindSafe,

§

impl<T: ?Sized> Send for Op<T>where <T as Immediates>::P1: Send, <T as Immediates>::P10: Send, <T as Immediates>::P11: Send, <T as Immediates>::P12: Send, <T as Immediates>::P13: Send, <T as Immediates>::P14: Send, <T as Immediates>::P15: Send, <T as Immediates>::P16: Send, <T as Immediates>::P17: Send, <T as Immediates>::P18: Send, <T as Immediates>::P19: Send, <T as Immediates>::P2: Send, <T as Immediates>::P20: Send, <T as Immediates>::P21: Send, <T as Immediates>::P22: Send, <T as Immediates>::P23: Send, <T as Immediates>::P24: Send, <T as Immediates>::P25: Send, <T as Immediates>::P26: Send, <T as Immediates>::P27: Send, <T as Immediates>::P28: Send, <T as Immediates>::P29: Send, <T as Immediates>::P3: Send, <T as Immediates>::P30: Send, <T as Immediates>::P31: Send, <T as Immediates>::P32: Send, <T as Immediates>::P4: Send, <T as Immediates>::P5: Send, <T as Immediates>::P6: Send, <T as Immediates>::P7: Send, <T as Immediates>::P8: Send, <T as Immediates>::P9: Send,

§

impl<T: ?Sized> Sync for Op<T>where <T as Immediates>::P1: Sync, <T as Immediates>::P10: Sync, <T as Immediates>::P11: Sync, <T as Immediates>::P12: Sync, <T as Immediates>::P13: Sync, <T as Immediates>::P14: Sync, <T as Immediates>::P15: Sync, <T as Immediates>::P16: Sync, <T as Immediates>::P17: Sync, <T as Immediates>::P18: Sync, <T as Immediates>::P19: Sync, <T as Immediates>::P2: Sync, <T as Immediates>::P20: Sync, <T as Immediates>::P21: Sync, <T as Immediates>::P22: Sync, <T as Immediates>::P23: Sync, <T as Immediates>::P24: Sync, <T as Immediates>::P25: Sync, <T as Immediates>::P26: Sync, <T as Immediates>::P27: Sync, <T as Immediates>::P28: Sync, <T as Immediates>::P29: Sync, <T as Immediates>::P3: Sync, <T as Immediates>::P30: Sync, <T as Immediates>::P31: Sync, <T as Immediates>::P32: Sync, <T as Immediates>::P4: Sync, <T as Immediates>::P5: Sync, <T as Immediates>::P6: Sync, <T as Immediates>::P7: Sync, <T as Immediates>::P8: Sync, <T as Immediates>::P9: Sync,

§

impl<T: ?Sized> Unpin for Op<T>where <T as Immediates>::P1: Unpin, <T as Immediates>::P10: Unpin, <T as Immediates>::P11: Unpin, <T as Immediates>::P12: Unpin, <T as Immediates>::P13: Unpin, <T as Immediates>::P14: Unpin, <T as Immediates>::P15: Unpin, <T as Immediates>::P16: Unpin, <T as Immediates>::P17: Unpin, <T as Immediates>::P18: Unpin, <T as Immediates>::P19: Unpin, <T as Immediates>::P2: Unpin, <T as Immediates>::P20: Unpin, <T as Immediates>::P21: Unpin, <T as Immediates>::P22: Unpin, <T as Immediates>::P23: Unpin, <T as Immediates>::P24: Unpin, <T as Immediates>::P25: Unpin, <T as Immediates>::P26: Unpin, <T as Immediates>::P27: Unpin, <T as Immediates>::P28: Unpin, <T as Immediates>::P29: Unpin, <T as Immediates>::P3: Unpin, <T as Immediates>::P30: Unpin, <T as Immediates>::P31: Unpin, <T as Immediates>::P32: Unpin, <T as Immediates>::P4: Unpin, <T as Immediates>::P5: Unpin, <T as Immediates>::P6: Unpin, <T as Immediates>::P7: Unpin, <T as Immediates>::P8: Unpin, <T as Immediates>::P9: Unpin,

§

impl<T: ?Sized> UnwindSafe for Op<T>where <T as Immediates>::P1: UnwindSafe, <T as Immediates>::P10: UnwindSafe, <T as Immediates>::P11: UnwindSafe, <T as Immediates>::P12: UnwindSafe, <T as Immediates>::P13: UnwindSafe, <T as Immediates>::P14: UnwindSafe, <T as Immediates>::P15: UnwindSafe, <T as Immediates>::P16: UnwindSafe, <T as Immediates>::P17: UnwindSafe, <T as Immediates>::P18: UnwindSafe, <T as Immediates>::P19: UnwindSafe, <T as Immediates>::P2: UnwindSafe, <T as Immediates>::P20: UnwindSafe, <T as Immediates>::P21: UnwindSafe, <T as Immediates>::P22: UnwindSafe, <T as Immediates>::P23: UnwindSafe, <T as Immediates>::P24: UnwindSafe, <T as Immediates>::P25: UnwindSafe, <T as Immediates>::P26: UnwindSafe, <T as Immediates>::P27: UnwindSafe, <T as Immediates>::P28: UnwindSafe, <T as Immediates>::P29: UnwindSafe, <T as Immediates>::P3: UnwindSafe, <T as Immediates>::P30: UnwindSafe, <T as Immediates>::P31: UnwindSafe, <T as Immediates>::P32: UnwindSafe, <T as Immediates>::P4: UnwindSafe, <T as Immediates>::P5: UnwindSafe, <T as Immediates>::P6: UnwindSafe, <T as Immediates>::P7: UnwindSafe, <T as Immediates>::P8: UnwindSafe, <T as Immediates>::P9: UnwindSafe,

Blanket Implementations§

source§

impl<T> Any for Twhere T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for Twhere T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for Twhere T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

source§

impl<T, U> Into<U> for Twhere U: From<T>,

source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

source§

impl<T> ToOwned for Twhere T: Clone,

§

type Owned = T

The resulting type after obtaining ownership.
source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
source§

impl<T> ToString for Twhere T: Display + ?Sized,

source§

default fn to_string(&self) -> String

Converts the given value to a String. Read more
source§

impl<T, U> TryFrom<U> for Twhere U: Into<T>,

§

type Error = Infallible

The type returned in the event of a conversion error.
source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
source§

impl<T, U> TryInto<U> for Twhere U: TryFrom<T>,

§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.