小编syn*_*101的帖子

Ruby Sorbet 哈希类型检查

我想了解为什么冰糕不抱怨这个例子:例子

sig {params(x: T::Hash[String, String]).void}
def foo(x)
  x.each do |k, v|
    puts "key = #{k}, value = #{v}"
  end
end

hash = {}
hash[1] = 1
foo(hash) #  I'd expect this to fail to type-check
Run Code Online (Sandbox Code Playgroud)

我已声明foo接受 [String, String] 的哈希值,但我传递的是 [Integer, Integer] 的哈希值。我以为冰糕会在这里抱怨......

有没有办法让它在这种情况下出错?

ruby sorbet

1
推荐指数
1
解决办法
943
查看次数

标签 统计

ruby ×1

sorbet ×1