class Covered::PartialSummary

def print_coverage(terminal, coverage, before: 4, after: 4)

def print_coverage(terminal, coverage, before: 4, after: 4)
	return if coverage.zero?
	
	line_offset = 1
	counts = coverage.counts
	last_line = nil
	
	coverage.read do |file|
		print_line_header(terminal)
		
		file.each_line do |line|
			range = Range.new([line_offset - before, 0].max, line_offset+after)
			
			if counts[range]&.include?(0)
				count = counts[line_offset]
				
				if last_line and last_line != line_offset-1
					terminal.puts ":".rjust(16)
				end
				
				print_annotations(terminal, coverage, line, line_offset)
				print_line(terminal, line, line_offset, count)
				
				last_line = line_offset
			end
			
			line_offset += 1
		end
	end
end