class SyntaxTree::YARV::OptArefWith
~~~
~~~ruby
### Usage
receiver off the stack and pushes on the result.
compile time. There are fast paths if the receiver is a hash. It pops the
occurs when the ‘[]` operator is used with a string argument known at
`opt_aref_with` is a specialization of the `opt_aref` instruction that
### Summary
def ==(other)
def ==(other) other.is_a?(OptArefWith) && other.object == object && other.calldata == calldata end
def call(vm)
def call(vm) vm.push(vm.pop[object]) end
def deconstruct_keys(_keys)
def deconstruct_keys(_keys) { object: object, calldata: calldata } end
def disasm(fmt)
def disasm(fmt) fmt.instruction( "opt_aref_with", [fmt.object(object), fmt.calldata(calldata)] ) end
def initialize(object, calldata)
def initialize(object, calldata) @object = object @calldata = calldata end
def length
def length 3 end
def pops
def pops 1 end
def pushes
def pushes 1 end
def to_a(_iseq)
def to_a(_iseq) [:opt_aref_with, object, calldata.to_h] end