特定のディレクトリから必要なすべての .rb ファイルをインポートするのに問題があります。この質問が多く寄せられていることは知っていますが、以前の投稿のどれも私の問題を解決していないようです。
これが私のディレクトリ構造です:
- Docs
- Lexer
- Parser
--> Parser.rb
- SyntaxTree
--> I want all the .rb files from here
--> Sets.rb (Module I want to import)
--> EMPTY_SET (constant I want to reference)
- Test
<Main Program>
私は現在 Parser.rb で作業しており、Parser.rb 内でそれらを参照できるように、SyntaxTree ディレクトリからすべての .rb ファイルを取得する必要があります。Sets.rb に含まれている Sets モジュールもインポートします。
以前の投稿のほとんどで見たすべての ruby ファイルをインポートしようとする現在の方法を次に示します。
Dir['../SyntaxTree/*.rb'].each {|file| require file}
私も試しました:
Dir['../SyntaxTree/*.rb'].each {|file| require_relative file}
これらの方法のいずれかを使用しても、Sets モジュールをインクルードしようとするとエラーが発生します。
class Parser
include Sets
.
.
end
`<class:Parser>': uninitialized constant Parser::Sets (NameError)
直接含めるSets.rb
とエラーが消えます
どんなアイデアでも非常に役に立ちます。