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