This depends on having Set loaded, it should require Set itself
Opened this issue · 0 comments
philomory commented
Steps to reproduce
irb(main):001:0> require 'erle'
NameError: uninitialized constant ERLE::Term::Set
from C:/Ruby24-x64/lib/ruby/gems/2.4.0/gems/erle-0.1.0/lib/erle/elements/term.rb:14:in `patterns'
from C:/Ruby24-x64/lib/ruby/gems/2.4.0/gems/erle-0.1.0/lib/erle/elements/term.rb:18:in `pattern'
from C:/Ruby24-x64/lib/ruby/gems/2.4.0/gems/erle-0.1.0/lib/erle/elements/numbers.rb:8:in `<class:Float>'
from C:/Ruby24-x64/lib/ruby/gems/2.4.0/gems/erle-0.1.0/lib/erle/elements/numbers.rb:7:in `<module:ERLE>'
from C:/Ruby24-x64/lib/ruby/gems/2.4.0/gems/erle-0.1.0/lib/erle/elements/numbers.rb:1:in `<top (required)>'
from C:/Ruby24-x64/lib/ruby/2.4.0/rubygems/core_ext/kernel_require.rb:55:in `require'
from C:/Ruby24-x64/lib/ruby/2.4.0/rubygems/core_ext/kernel_require.rb:55:in `require'
from C:/Ruby24-x64/lib/ruby/gems/2.4.0/gems/erle-0.1.0/lib/erle.rb:9:in `<top (required)>'
from C:/Ruby24-x64/lib/ruby/2.4.0/rubygems/core_ext/kernel_require.rb:133:in `require'
from C:/Ruby24-x64/lib/ruby/2.4.0/rubygems/core_ext/kernel_require.rb:133:in `rescue in require'
from C:/Ruby24-x64/lib/ruby/2.4.0/rubygems/core_ext/kernel_require.rb:39:in `require'
from (irb):1
from C:/Ruby24-x64/bin/irb.cmd:19:in `<main>'
irb(main):002:0> require 'set'
=> true
irb(main):003:0> require 'erle'
=> true
Explanation
Set
is part of the Ruby Standard Library, but not part of Ruby Core; thus, require 'set'
is needed to load the Set
class before using it; the erle
gem instead leaves it up to the user to run require 'set'
before require 'erle'
.