class Covered::Cache

def disable

def disable
	super
	
	flush
end

def enable

def enable
	@marks = []
	
	super
end

def flush

def flush
	if @marks
		@marks.each_slice(3) do |path, lineno, count|
			@output.mark(path, lineno, count)
		end
		
		@marks = nil
	end
	
	super
end

def initialize(output)

def initialize(output)
	super(output)
	
	@marks = nil
end

def mark(path, lineno, count = 1)

def mark(path, lineno, count = 1)
	if @marks
		@marks.push(path, lineno, count)
	else
		super
	end
end