Class: Henitai::MutantGenerator::SubjectVisitor

Inherits:
Object
  • Object
show all
Defined in:
lib/henitai/mutant_generator.rb

Overview

Depth-first pre-order AST visitor for a single subject.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(subject, operators, config:, arid_node_filter:, syntax_validator:) ⇒ SubjectVisitor

Returns a new instance of SubjectVisitor.



55
56
57
58
59
60
61
62
63
# File 'lib/henitai/mutant_generator.rb', line 55

def initialize(subject, operators, config:, arid_node_filter:, syntax_validator:)
  @subject = subject
  @config = config
  @mutants = []
  @arid_node_filter = arid_node_filter
  @syntax_validator = syntax_validator
  initialize_subject_range(subject)
  @operators_by_node_type = index_operators(operators)
end

Instance Attribute Details

#mutantsObject (readonly)

Returns the value of attribute mutants.



53
54
55
# File 'lib/henitai/mutant_generator.rb', line 53

def mutants
  @mutants
end

Instance Method Details

#process(node) ⇒ Object



65
66
67
# File 'lib/henitai/mutant_generator.rb', line 65

def process(node)
  walk(node)
end