访问对象 (https://srb.help/3001) 的单例 class 时出错

Error when accessing singleton class of object (https://srb.help/3001)

当我使用以下代码

访问对象的单例class时
(class << object; self; end)

srb 命令引发错误:

class << EXPRESSION is only supported for class << self https://srb.help/3001

由于特殊情况(proxy/mock对象)我不能调用对象的任何方法。特别是被问及singleton_classinstance evalinstance_execbinding时,对象极其不热心,所以我需要用这个表达

如何抑制这个错误?将表达式包装在 T.unsafe 中没有帮助。

看起来你最好的选择是在它自己的文件中隔离此测试(我假设它是由于 proxy/mock 引用)并将该文件标记为 typed: ignore。由于该错误是处理阶段错误(具体来说,3xxx 错误来自脱糖阶段,在该阶段代码被重写以简化表示),因此无法使用 T.unsafe 或其他方法抑制它。