Replace custom collection with Set
The original constraints that led to using a custom collection rather than Array or Set here no longer exist, so let's avoid the pointless abstraction here.
This commit is contained in:
parent
94bf0747b3
commit
7104e20bde
@ -21,29 +21,6 @@ class Compilers
|
|||||||
end
|
end
|
||||||
|
|
||||||
|
|
||||||
class CompilerFailures
|
|
||||||
include Enumerable
|
|
||||||
|
|
||||||
def initialize(*args)
|
|
||||||
@failures = Array.new(*args)
|
|
||||||
end
|
|
||||||
|
|
||||||
def each(*args, &block)
|
|
||||||
@failures.each(*args, &block)
|
|
||||||
end
|
|
||||||
|
|
||||||
def include?(cc)
|
|
||||||
cc = Compiler.new(cc) unless cc.is_a? Compiler
|
|
||||||
@failures.any? { |failure| failure.compiler == cc.name }
|
|
||||||
end
|
|
||||||
|
|
||||||
def <<(o)
|
|
||||||
@failures << o unless include? o.compiler
|
|
||||||
self
|
|
||||||
end
|
|
||||||
end
|
|
||||||
|
|
||||||
|
|
||||||
class Compiler
|
class Compiler
|
||||||
attr_reader :name, :build
|
attr_reader :name, :build
|
||||||
|
|
||||||
|
|||||||
@ -785,12 +785,8 @@ private
|
|||||||
end
|
end
|
||||||
|
|
||||||
def fails_with compiler, &block
|
def fails_with compiler, &block
|
||||||
@cc_failures ||= CompilerFailures.new
|
@cc_failures ||= Set.new
|
||||||
@cc_failures << if block_given?
|
@cc_failures << CompilerFailure.new(compiler, &block)
|
||||||
CompilerFailure.new(compiler, &block)
|
|
||||||
else
|
|
||||||
CompilerFailure.new(compiler)
|
|
||||||
end
|
|
||||||
end
|
end
|
||||||
|
|
||||||
def test &block
|
def test &block
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user