私はちょうどこれに固執してしまった。私は、モジュールを指定するには、::
を使用してインデントを最小化しようとした場合、しかし、::を使用してモジュールを指定したときに、Rubyがより高いスコープでクラスを見つけられないのはなぜですか?
module Top
module Foo
class SomeTest < Test
end
end
end
:
module Top
class Test
end
module Foo
end
end
その後、私はこれを行うことにより、Test
を拡張Foo
内のクラスを定義することができます。このベースを取る
module Top::Foo
class Failure < Test
end
end
これはで失敗します。
NameError: uninitialized constant Top::Foo::Test
これはバグですか、それともRubyが変数名を解決する方法の論理的な結果ですか?
は私にはバグのような音:Pしかし、非常に有益な応答、私はそれバグ考えると言うでしょう、あなたに – Hubro
に感謝、誰もがこの程度ルビーでバグレポートを発見しましたか?私は議論に貢献し、これを修正することに関わるものを見たいと思います。 –
注:意図的な[ここ](https://bugs.ruby-lang.org/issues/11705) –