class SyntaxTree::YARV::Legacy::OptGetInlineCache
~~~
Constant
~~~ruby
### Usage
the consolidated ‘opt_getconstant_path` instruction.
This instruction is no longer used since in Ruby 3.2 it was replaced by
if it is set, otherwise it pushes `nil`.
cache is currently set. It pushes the value of the cache onto the stack
`getconstant` instructions that allows skipping past them if the inline
`opt_getinlinecache` is a wrapper around a series of `putobject` and
### Summary
def ==(other)
def ==(other) other.is_a?(OptGetInlineCache) && other.label == label && other.cache == cache end
def branch_targets
def branch_targets [label] end
def call(vm)
def call(vm) vm.push(nil) end
def deconstruct_keys(_keys)
def deconstruct_keys(_keys) { label: label, cache: cache } end
def disasm(fmt)
def disasm(fmt) fmt.instruction( "opt_getinlinecache", [fmt.label(label), fmt.inline_storage(cache)] ) end
def falls_through?
def falls_through? true end
def initialize(label, cache)
def initialize(label, cache) @label = label @cache = cache end
def length
def length 3 end
def pushes
def pushes 1 end
def to_a(_iseq)
def to_a(_iseq) [:opt_getinlinecache, label.name, cache] end