11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
|
# File 'lib/akainaa/util.rb', line 11
def fullfill_multiline_method_calls(source_path, lines)
result = Prism.parse_file(source_path)
prog_node = result.value
visitor = ::Akainaa::CallNodeVisitor.new
visitor.visit(prog_node)
fullfilled_lines = lines.dup
visitor.multiline_method_calls.each do |method_range|
call_count = lines[method_range.start_line_as_idx]
next if call_count.nil?
method_range.method_row_range_as_idx.each do |idx|
if fullfilled_lines[idx].nil?
fullfilled_lines[idx] = call_count
elsif fullfilled_lines[idx] < call_count
fullfilled_lines[idx] = call_count
else
end
end
end
fullfilled_lines
end
|