oop/used_refinements.rb
tests/_examples/oop/used_refinements.rb in the metorex repository.
integers = Module.new do
refine Integer do
end
end
strings = Module.new do
refine String do
end
end
combined = Module.new do
include integers
end
Module.new do
puts Module.used_refinements.inspect
end
Module.new do
using integers
using strings
puts Module.used_refinements.length.inspect
end
Module.new do
using combined
puts (Module.used_refinements == integers.refinements).inspect
end
Module.new do
include combined
puts Module.used_refinements.inspect
end
Module.new do
puts Module.used_refinements.inspect
end
Output:
[]
2
true
[]
[]