Module: Virtual

Included in:
Controls::AbstractMethod::Example, Controls::Extended::Example, Controls::Included::Example, Controls::PureVirtualMethod::Example, Controls::VirtualMethod::Body::Example, Controls::VirtualMethod::Example
Defined in:
lib/virtual/macro.rb,
lib/virtual/method.rb,
lib/virtual/virtual.rb,
lib/virtual/activate.rb,
lib/virtual/pure_method.rb,
lib/virtual/controls/clean.rb,
lib/virtual/controls/extended.rb,
lib/virtual/controls/included.rb,
lib/virtual/controls/virtual_method.rb,
lib/virtual/controls/abstract_method.rb,
lib/virtual/controls/pure_virtual_method.rb

Defined Under Namespace

Modules: Assertions, Controls, Macro, Method, PureMethod

Class Method Summary collapse

Class Method Details

.activate(target_class = nil) ⇒ Object



2
3
4
5
6
7
8
# File 'lib/virtual/activate.rb', line 2

def self.activate(target_class=nil)
  target_class ||= Object

  return if target_class.ancestors.include?(Virtual::Macro)

  target_class.extend(Virtual::Macro)
end

.extended(cls) ⇒ Object



6
7
8
# File 'lib/virtual/virtual.rb', line 6

def self.extended(cls)
  activate(cls)
end

.included(cls) ⇒ Object



2
3
4
# File 'lib/virtual/virtual.rb', line 2

def self.included(cls)
  activate(cls)
end