我正试图将一个论点传递给Proc0#call,但是Sorbet失败了:
foo do |data|
# Do stuff
end
sig { params(block: T.proc.void).void }
def foo(&block)
x = { foo: :bar }
block.call(x)
end运行Sorbet时,我看到以下错误:
为Proc0#call方法提供了太多的参数。预期: 0,got: 1 https://srb.help/7004
如何使用严格模式避免这种情况?
发布于 2022-05-05 03:37:33
现在我看到了!签名将param传递为arg0。
sig {params(blk: T.proc.params(arg0: Hash).void).void}https://stackoverflow.com/questions/72121576
复制相似问题