Module: Tapioca::Runtime::Trackers::Tracker Abstract

Extended by:
T::Sig
Included in:
Autoload, ConstantDefinition, MethodDefinition, Mixin, RequiredAncestor
Defined in:
lib/tapioca/runtime/trackers/tracker.rb

Overview

This module is abstract.

Class Method Summary collapse

Instance Method Summary collapse

Class Method Details

.extended(base) ⇒ Object

: ((Tracker & Module) base) -> void



14
15
16
17
18
19
# File 'lib/tapioca/runtime/trackers/tracker.rb', line 14

def extended(base)
  Trackers.register_tracker(base)
  base.instance_exec do
    @enabled = true
  end
end

Instance Method Details

#disable!Object

: -> void



23
24
25
# File 'lib/tapioca/runtime/trackers/tracker.rb', line 23

def disable!
  @enabled = false
end

#enabled?Boolean

Returns:

  • (Boolean)


27
28
29
# File 'lib/tapioca/runtime/trackers/tracker.rb', line 27

def enabled?
  @enabled
end

#with_disabled_tracker(&block) ⇒ Object



31
32
33
34
35
36
37
38
# File 'lib/tapioca/runtime/trackers/tracker.rb', line 31

def with_disabled_tracker(&block)
  original_state = @enabled
  @enabled = false

  block.call
ensure
  @enabled = original_state
end