Class: Paramix::Parametric::Mixin

Inherits:
Module
  • Object
show all
Defined in:
lib/paramix.rb

Overview

An instance of the Mixin module class is what is porduced when parameters are applied to a parametric module.

Instance Method Summary collapse

Constructor Details

#initialize(base, parameters) ⇒ Mixin



85
86
87
88
89
90
91
92
# File 'lib/paramix.rb', line 85

def initialize(base, parameters)
  include(base)
  #base.append_features(self)
  base.parameterized.each do |code|
    instance_exec(parameters, &code)
  end
  #base.parameterized.clear
end

Instance Method Details

#private(name, &code) ⇒ Object



101
102
103
104
# File 'lib/paramix.rb', line 101

def private(name, &code)
  define_method(name, &code)
  super(name)
end

#protected(name, &code) ⇒ Object



107
108
109
110
# File 'lib/paramix.rb', line 107

def protected(name, &code)
  define_method(name, &code)
  super(name)
end

#public(name, &code) ⇒ Object



95
96
97
98
# File 'lib/paramix.rb', line 95

def public(name, &code)
  define_method(name, &code)
  super(name)
end