class Foo
def []=(*args)
ary = []
val = args[-1]
ary[*args[0..-2]] = val # TODO: there is room to improve array_aset
ary # This should be Array[String]
end
end
Foo.new[1] = "str"
__END__
# Classes
class Foo
def []=: (*Integer | String args) -> Array[bot]
end