Class: Mutant::Env

Inherits:
Object
  • Object
show all
Includes:
Adamantium::Flat
Defined in:
lib/mutant/env.rb

Overview

Abstract base class for mutant environments

Constant Summary collapse

SEMANTICS_MESSAGE =
"Fix your lib to follow normal ruby semantics!\n" \
'{Module,Class}#name should return resolvable constant name as String or nil'.freeze

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initializeundefined

This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.

Initialize env



28
29
30
31
32
33
34
35
# File 'lib/mutant/env.rb', line 28

def initialize(*)
  super

  infect
  initialize_matchable_scopes
  initialize_subjects
  initialize_mutations
end

Instance Attribute Details

#matchable_scopesArray<Matcher::Scope> (readonly)

This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.

Return all usable match scopes

Returns:



72
73
74
# File 'lib/mutant/env.rb', line 72

def matchable_scopes
  @matchable_scopes
end

#mutationsArray<Mutation> (readonly)

This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.

Return mutations

Returns:



64
65
66
# File 'lib/mutant/env.rb', line 64

def mutations
  @mutations
end

#subjectsArray<Subject> (readonly)

This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.

Return subjects

Returns:



56
57
58
# File 'lib/mutant/env.rb', line 56

def subjects
  @subjects
end

Class Method Details

.new(config, cache = Cache.new) ⇒ Env

This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.

Return new env

Parameters:

Returns:



18
19
20
# File 'lib/mutant/env.rb', line 18

def self.new(config, cache = Cache.new)
  super(config, cache)
end

Instance Method Details

#warn(message) ⇒ self

This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.

Print warning message

Parameters:

  • (String)

Returns:

  • (self)


45
46
47
48
# File 'lib/mutant/env.rb', line 45

def warn(message)
  config.reporter.warn(message)
  self
end