free_mutant/lib/mutant/reporter.rb
Markus Schirp 40d5230c68 Introduce noop mutation guards and argument mutators
* Sorry for not splitting up into smaller commit
2012-12-11 00:17:19 +01:00

84 lines
1.2 KiB
Ruby

module Mutant
# Abstract reporter
class Reporter
include Adamantium::Flat, AbstractType
# Report subject
#
# @param [Subject] subject
#
# @return [self]
#
# @api private
#
abstract_method :subject
# Report mutation
#
# @param [Mutation] mutation
#
# @return [self]
#
# @api private
#
abstract_method :mutation
# Report notice
#
# @param [String] notice
#
# @return [self]
#
# @api private
#
abstract_method :notice
# Report killer
#
# @param [Killer] killer
#
# @return [self]
#
# @api private
#
abstract_method :killer
# Report config
#
# @param [Mutant::Config] config
#
# @return [self]
#
# @api private
#
abstract_method :config
# Return output stream
#
# @return [IO]
#
# @api private
#
abstract_method :output_stream
# Return error stream
#
# @return [IO]
#
# @api private
#
abstract_method :error_stream
private
# Initialize reporter
#
# @param [Config] config
#
# @api private
#
def initialize(config)
@config = config
end
end
end