Class: Evilution::Equivalent::Detector
- Inherits:
-
Object
- Object
- Evilution::Equivalent::Detector
- Defined in:
- lib/evilution/equivalent/detector.rb
Instance Method Summary collapse
- #call(mutations) ⇒ Object
-
#initialize(heuristics: nil) ⇒ Detector
constructor
A new instance of Detector.
Constructor Details
#initialize(heuristics: nil) ⇒ Detector
Returns a new instance of Detector.
14 15 16 |
# File 'lib/evilution/equivalent/detector.rb', line 14 def initialize(heuristics: nil) @heuristics = heuristics || default_heuristics end |
Instance Method Details
#call(mutations) ⇒ Object
18 19 20 21 22 23 24 25 26 27 28 29 30 31 |
# File 'lib/evilution/equivalent/detector.rb', line 18 def call(mutations) equivalent = [] remaining = [] mutations.each do |mutation| if @heuristics.any? { |h| h.match?(mutation) } equivalent << mutation else remaining << mutation end end [equivalent, remaining] end |