HEX
Server: Apache
System: Linux s198.coreserver.jp 5.15.0-151-generic #161-Ubuntu SMP Tue Jul 22 14:25:40 UTC 2025 x86_64
User: nagasaki (10062)
PHP: 7.1.33
Disabled: NONE
Upload Files
File: //usr/local/rvm/rubies/default/lib/ruby/gems/3.0.0/gems/typeprof-0.12.0/smoke/method_missing.rb
class D
  def foo(x, y, z)
  end
end

class C
  def initialize(x)
    @target = x
  end

  def method_missing(m, *args)
    @target.send(m, *args)
  end
end

C.new(D.new).foo(:X, :Y, :Z)

__END__
# Classes
class D
  def foo: (:X x, :Y y, :Z z) -> nil
end

class C
  @target: D

  def initialize: (D x) -> D
  def method_missing: (:foo m, *:X | :Y | :Z args) -> nil
end