2012-07-26 13:25:23 -04:00
|
|
|
module Mutant
|
2014-08-07 12:00:31 -04:00
|
|
|
# An abstract context where mutations can be applied to.
|
2012-07-26 13:25:23 -04:00
|
|
|
class Context
|
2013-06-14 15:03:22 -04:00
|
|
|
include Adamantium::Flat, AbstractType, Concord::Public.new(:source_path)
|
2012-07-26 13:25:23 -04:00
|
|
|
|
2015-07-03 11:21:39 -04:00
|
|
|
# Root ast node
|
2012-07-26 13:25:23 -04:00
|
|
|
#
|
2013-06-14 15:03:22 -04:00
|
|
|
# @param [Parser::AST::Node] node
|
2013-01-13 16:26:31 -05:00
|
|
|
#
|
2013-06-14 15:03:22 -04:00
|
|
|
# @return [Parser::AST::Node]
|
2012-07-26 13:25:23 -04:00
|
|
|
#
|
|
|
|
# @api private
|
2012-08-02 19:28:15 -04:00
|
|
|
abstract_method :root
|
2012-08-14 06:26:56 -04:00
|
|
|
|
2015-07-03 11:21:39 -04:00
|
|
|
# Identification string
|
2013-01-13 16:27:03 -05:00
|
|
|
#
|
|
|
|
# @return [String]
|
|
|
|
#
|
|
|
|
# @api private
|
|
|
|
abstract_method :identification
|
|
|
|
|
2013-06-14 14:54:02 -04:00
|
|
|
end # Context
|
|
|
|
end # Mutant
|