Class: Mutant::Subject::Method::Singleton Private

Inherits:
Mutant::Subject::Method show all
Defined in:
lib/mutant/subject/method/singleton.rb

Overview

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

Singleton method subjects

Constant Summary collapse

NAME_INDEX =

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

1
SYMBOL =

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

'.'

Instance Method Summary collapse

Methods inherited from Mutant::Subject::Method

#expression, #match_expressions, #name

Methods inherited from Mutant::Subject

#expression, #identification, #inline_disabled?, #match_expressions, #mutations, #source, #source_line, #source_lines, #source_path

Instance Method Details

#post_insertObject

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.



20
21
22
23
# File 'lib/mutant/subject/method/singleton.rb', line 20

def post_insert
  scope.raw.singleton_class.__send__(visibility, name)
  self
end

#prepareself

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.

Prepare subject for mutation insertion

Returns:

  • (self)


15
16
17
18
# File 'lib/mutant/subject/method/singleton.rb', line 15

def prepare
  scope.raw.singleton_class.undef_method(name)
  self
end