def method_missing(method_name, *args, &block)
if @extractor.evaluating_extractor_definition
@modifier_calls << [method_name, [:array, *args.collect { |arg| [:lit, arg] }]]
end
case method_name.to_s
when 'select_indices'
@result_indexer = Scrubyt::ResultIndexer.new(*args)
return self
when /^ensure_/
@constraints << Scrubyt::ConstraintAdder.send(method_name, *args)
return self
else
@children.each { |child| return child if child.name == method_name.to_s }
end
raise NoMethodError.new(method_name.to_s, method_name.to_s, args)
end