module-cluster 1.4.4 → 1.4.5
Sign up to get free protection for your applications and to get access to all the features.
- data/README.md +21 -0
- data/README.rdoc +21 -0
- data/lib/module-cluster/ModuleCluster/Define/Block/CascadingClass.rb +83 -0
- data/lib/module-cluster/ModuleCluster/Define/Block/CascadingClassOrModule.rb +70 -0
- data/lib/module-cluster/ModuleCluster/Define/Block/CascadingModule.rb +79 -0
- data/lib/module-cluster/ModuleCluster/Define/Block/CascadingModuleOrSubclass.rb +22 -0
- data/lib/module-cluster/ModuleCluster/Define/Block/Class.rb +15 -7
- data/lib/module-cluster/ModuleCluster/Define/Block/ClassOrInstance.rb +15 -7
- data/lib/module-cluster/ModuleCluster/Define/Block/ClassOrModule.rb +15 -7
- data/lib/module-cluster/ModuleCluster/Define/Block/ClassOrModuleOrInstance.rb +15 -7
- data/lib/module-cluster/ModuleCluster/Define/Block/ClassOrModuleOrSubclass.rb +11 -3
- data/lib/module-cluster/ModuleCluster/Define/Block/ClassOrSubclass.rb +10 -2
- data/lib/module-cluster/ModuleCluster/Define/Block/Instance.rb +15 -3
- data/lib/module-cluster/ModuleCluster/Define/Block/Module.rb +15 -7
- data/lib/module-cluster/ModuleCluster/Define/Block/ModuleOrInstance.rb +15 -7
- data/lib/module-cluster/ModuleCluster/Define/Block/ModuleOrSubclass.rb +10 -2
- data/lib/module-cluster/ModuleCluster/Define/Block/Subclass.rb +13 -2
- data/lib/module-cluster/ModuleCluster/Define/Block.rb +1 -1
- data/lib/module-cluster/ModuleCluster/Define/ClassCluster.rb +19 -19
- data/lib/module-cluster/ModuleCluster/Define/ClassOrInstanceCluster.rb +34 -34
- data/lib/module-cluster/ModuleCluster/Define/Cluster.rb +19 -19
- data/lib/module-cluster/ModuleCluster/Define/ClusterCascades.rb +19 -19
- data/lib/module-cluster/ModuleCluster/Define/ClusterCascadesToClass.rb +19 -19
- data/lib/module-cluster/ModuleCluster/Define/ClusterCascadesToModule.rb +19 -19
- data/lib/module-cluster/ModuleCluster/Define/Deprecated.rb +1 -1
- data/lib/module-cluster/ModuleCluster/Define/InstanceCluster.rb +3 -3
- data/lib/module-cluster/ModuleCluster/Define/ModuleCluster.rb +19 -19
- data/lib/module-cluster/ModuleCluster/Define/ModuleOrClassCluster.rb +43 -43
- data/lib/module-cluster/ModuleCluster/Define/ModuleOrInstanceCluster.rb +34 -34
- data/lib/module-cluster/ModuleCluster/Define/Status.rb +1 -1
- data/lib/module-cluster/ModuleCluster/Define.rb +1 -1
- data/lib/module-cluster/ModuleCluster/Suspend/Hooks.rb +1 -1
- data/lib/module-cluster/ModuleCluster/Suspend/WithoutHooks.rb +1 -1
- data/lib/module-cluster/ModuleCluster/Suspend.rb +1 -1
- data/lib/module-cluster/ModuleCluster.rb +1 -1
- data/lib/module-cluster/_private_/ModuleCluster/CascadeFeatures/ClusterStack.rb +3 -3
- data/lib/module-cluster/_private_/ModuleCluster/CascadeFeatures/PerformCascades.rb +85 -32
- data/lib/module-cluster/_private_/ModuleCluster/CascadeFeatures/Subclass.rb +6 -3
- data/lib/module-cluster/_private_/ModuleCluster/CascadeFeatures.rb +5 -5
- data/lib/module-cluster/_private_/ModuleCluster/ClusterStack/Block/Class.rb +9 -9
- data/lib/module-cluster/_private_/ModuleCluster/ClusterStack/Block/Inherited.rb +3 -3
- data/lib/module-cluster/_private_/ModuleCluster/ClusterStack/Block/Instance.rb +5 -5
- data/lib/module-cluster/_private_/ModuleCluster/ClusterStack/Block/Module.rb +9 -9
- data/lib/module-cluster/_private_/ModuleCluster/ClusterStack/Block/Set.rb +1 -0
- data/lib/module-cluster/_private_/ModuleCluster/ClusterStack/Block.rb +1 -1
- data/lib/module-cluster/_private_/ModuleCluster/ClusterStack/Extends.rb +13 -13
- data/lib/module-cluster/_private_/ModuleCluster/ClusterStack/Includes.rb +10 -10
- data/lib/module-cluster/_private_/ModuleCluster/ClusterStack/PrependsExtends.rb +13 -13
- data/lib/module-cluster/_private_/ModuleCluster/ClusterStack/PrependsIncludes.rb +10 -10
- data/lib/module-cluster/_private_/ModuleCluster/ClusterStack/Set/MultiSetProxy.rb +1 -1
- data/lib/module-cluster/_private_/ModuleCluster/ClusterStack/Status.rb +1 -1
- data/lib/module-cluster/_private_/ModuleCluster/ClusterStack/Suspend.rb +1 -1
- data/lib/module-cluster/_private_/ModuleCluster/ClusterStack.rb +1 -1
- data/lib/module-cluster/_private_/ModuleCluster/ExtendForCascade/Subclass.rb +1 -1
- data/lib/module-cluster/_private_/ModuleCluster/ExtendForCascade.rb +1 -1
- data/lib/module-cluster.rb +14 -2
- data/spec/ModuleCluster/Define/Block/CascadingClassOrModule_spec.rb +285 -0
- data/spec/ModuleCluster/Define/Block/CascadingClass_spec.rb +241 -0
- data/spec/ModuleCluster/Define/Block/CascadingModuleOrSubclass_spec.rb +56 -0
- data/spec/ModuleCluster/Define/Block/CascadingModule_spec.rb +278 -0
- data/spec/ModuleCluster/Define/Block/ClassOrInstance_spec.rb +13 -13
- data/spec/ModuleCluster/Define/Block/ClassOrModuleOrInstance_spec.rb +13 -13
- data/spec/ModuleCluster/Define/Block/ClassOrModuleOrSubclass_spec.rb +2 -3
- data/spec/ModuleCluster/Define/Block/ClassOrModule_spec.rb +13 -13
- data/spec/ModuleCluster/Define/Block/ClassOrSubclass_spec.rb +2 -2
- data/spec/ModuleCluster/Define/Block/Class_spec.rb +13 -13
- data/spec/ModuleCluster/Define/Block/Instance_spec.rb +5 -5
- data/spec/ModuleCluster/Define/Block/ModuleOrInstance_spec.rb +1 -1
- data/spec/ModuleCluster/Define/Block/ModuleOrSubclass_spec.rb +2 -4
- data/spec/ModuleCluster/Define/Block/Module_spec.rb +13 -13
- data/spec/ModuleCluster/Define/Block/Subclass_spec.rb +8 -8
- data/spec/ModuleCluster/Define/Block_spec.rb +9 -9
- data/spec/ModuleCluster/Define/ClassCluster_spec.rb +227 -227
- data/spec/ModuleCluster/Define/ClassOrInstanceCluster_spec.rb +197 -197
- data/spec/ModuleCluster/Define/ClusterCascadesToClass_spec.rb +228 -228
- data/spec/ModuleCluster/Define/ClusterCascadesToModule_spec.rb +232 -232
- data/spec/ModuleCluster/Define/ClusterCascades_spec.rb +224 -224
- data/spec/ModuleCluster/Define/Cluster_spec.rb +221 -221
- data/spec/ModuleCluster/Define/InstanceCluster_spec.rb +29 -29
- data/spec/ModuleCluster/Define/ModuleCluster_spec.rb +227 -227
- data/spec/ModuleCluster/Define/ModuleOrClassCluster_spec.rb +227 -227
- data/spec/ModuleCluster/Define/ModuleOrInstanceCluster_spec.rb +197 -197
- data/spec/ModuleCluster/Suspend/Hooks_spec.rb +120 -120
- data/spec/ModuleCluster/Suspend/WithoutHooks_spec.rb +120 -120
- data/spec/ModuleCluster_spec.rb +2 -2
- data/spec/_private_/ModuleCluster/CascadeFeatures/PerformCascades_spec.rb +192 -192
- data/spec/_private_/ModuleCluster/ClusterStack/Set/MultiSetProxy_spec.rb +129 -129
- data/spec/_private_/ModuleCluster/ClusterStack/Suspend_spec.rb +17 -17
- metadata +9 -1
@@ -1,5 +1,5 @@
|
|
1
1
|
|
2
|
-
module ModuleCluster::CascadeFeatures::PerformCascades
|
2
|
+
module ::ModuleCluster::CascadeFeatures::PerformCascades
|
3
3
|
|
4
4
|
######################
|
5
5
|
# perform_cascades #
|
@@ -7,7 +7,7 @@ module ModuleCluster::CascadeFeatures::PerformCascades
|
|
7
7
|
|
8
8
|
def perform_cascades( module_self, action, hooked_instance, set_stack )
|
9
9
|
|
10
|
-
# This method is called when a ModuleCluster module is included or extended.
|
10
|
+
# This method is called when a ::ModuleCluster module is included or extended.
|
11
11
|
# It determines what modules should be included/extended and which should cascade.
|
12
12
|
|
13
13
|
unless module_self.hooks_suspended?( action )
|
@@ -18,10 +18,16 @@ module ModuleCluster::CascadeFeatures::PerformCascades
|
|
18
18
|
# if this particular set is suspended, skip to the next
|
19
19
|
next if this_set.suspended
|
20
20
|
|
21
|
-
# Block sets simply run a block at a hook.
|
22
|
-
#
|
23
|
-
|
21
|
+
# Block sets simply run a block at a hook.
|
22
|
+
# They do not include or extend returns from the block.
|
23
|
+
# The hooked module will not be extended by ::ModuleCluster.
|
24
|
+
if this_set.is_a?( ::ModuleCluster::ClusterStack::Block::Set )
|
24
25
|
|
26
|
+
# if our blocks are set to cascade then we need to copy inherit hooks
|
27
|
+
if this_set.dependency_module.should_cascade?( hooked_instance )
|
28
|
+
cascade_block_into_hooked_instance( module_self, hooked_instance, this_set )
|
29
|
+
end
|
30
|
+
|
25
31
|
if this_set.dependency_module.should_run_block?( hooked_instance )
|
26
32
|
|
27
33
|
case this_set.runtime_block.arity
|
@@ -36,29 +42,44 @@ module ModuleCluster::CascadeFeatures::PerformCascades
|
|
36
42
|
# Other sets take parameters and an optional block. The optional block returns are included
|
37
43
|
# or extended like the parameters provided.
|
38
44
|
else
|
45
|
+
|
46
|
+
if should_cascade = this_set.dependency_module.should_cascade?( hooked_instance )
|
47
|
+
# cascade parameter modules as appropriate
|
48
|
+
cascade_modules_into_hooked_instance( module_self,
|
49
|
+
hooked_instance,
|
50
|
+
this_set,
|
51
|
+
this_set.modules )
|
52
|
+
end
|
39
53
|
|
40
54
|
# dependency modules can cause instances to be included/extended and/or cascade
|
41
55
|
should_include = this_set.dependency_module.should_include_or_extend?( hooked_instance )
|
42
|
-
should_cascade = this_set.dependency_module.should_cascade?( hooked_instance )
|
43
|
-
|
44
|
-
# cascade parameter modules as appropriate
|
45
|
-
cascade_modules_into_hooked_instance( module_self, hooked_instance, this_set, this_set.modules ) if should_cascade
|
46
56
|
|
47
57
|
# include/extend parameter modules as appropriate
|
48
|
-
|
49
|
-
|
58
|
+
if should_include
|
59
|
+
include_extend_modules( module_self, hooked_instance, this_set, this_set.modules )
|
60
|
+
end
|
61
|
+
|
50
62
|
# process runtime block if present
|
51
63
|
if this_set.runtime_includes_or_extends_block
|
52
64
|
|
53
65
|
# if we have a runtime block, run block and collect returns as appropriate
|
54
|
-
if runtime_modules = collect_block_runtime_result_modules( module_self,
|
66
|
+
if runtime_modules = collect_block_runtime_result_modules( module_self,
|
67
|
+
hooked_instance,
|
68
|
+
this_set )
|
55
69
|
|
56
70
|
# cascade return modules if appropriate
|
57
|
-
|
58
|
-
|
71
|
+
if should_cascade
|
72
|
+
cascade_modules_into_hooked_instance( module_self,
|
73
|
+
hooked_instance,
|
74
|
+
this_set,
|
75
|
+
runtime_modules )
|
76
|
+
end
|
77
|
+
|
59
78
|
# include/extend return modules if appropriate
|
60
|
-
|
61
|
-
|
79
|
+
if should_include
|
80
|
+
include_extend_modules( module_self, hooked_instance, this_set, runtime_modules )
|
81
|
+
end
|
82
|
+
|
62
83
|
end
|
63
84
|
|
64
85
|
end
|
@@ -95,19 +116,40 @@ module ModuleCluster::CascadeFeatures::PerformCascades
|
|
95
116
|
|
96
117
|
def cascade_modules_into_hooked_instance( module_self, hooked_instance, set, modules )
|
97
118
|
|
98
|
-
# if we are supposed to cascade we need to extend with the ModuleCluster dependency module
|
119
|
+
# if we are supposed to cascade we need to extend with the ::ModuleCluster dependency module
|
99
120
|
hooked_instance.extend( set.dependency_module )
|
100
121
|
|
101
122
|
# and we call the set's definition method to cascade
|
102
123
|
hooked_instance.__send__( set.method, *modules )
|
103
124
|
|
104
125
|
end
|
126
|
+
|
127
|
+
########################################
|
128
|
+
# cascade_block_into_hooked_instance #
|
129
|
+
########################################
|
130
|
+
|
131
|
+
def cascade_block_into_hooked_instance( module_self, hooked_instance, set )
|
132
|
+
|
133
|
+
# if we are supposed to cascade we need to extend with the ::ModuleCluster dependency module
|
134
|
+
hooked_instance.extend( set.dependency_module )
|
135
|
+
|
136
|
+
# and we call the set's definition method to cascade
|
137
|
+
hooked_instance.__send__( set.method, & set.runtime_block )
|
138
|
+
|
139
|
+
existing_inherit_hooks = module_self.cluster_stack.inherited_hooks
|
140
|
+
hooked_instance.cluster_stack.inherited_hooks.concat( existing_inherit_hooks )
|
141
|
+
|
142
|
+
end
|
105
143
|
|
106
144
|
#######################################
|
107
145
|
# include_or_extend_hooked_instance #
|
108
146
|
######################################
|
109
147
|
|
110
|
-
def include_or_extend_hooked_instance( hooked_instance,
|
148
|
+
def include_or_extend_hooked_instance( hooked_instance,
|
149
|
+
set,
|
150
|
+
should_include,
|
151
|
+
should_extend,
|
152
|
+
modules )
|
111
153
|
|
112
154
|
# We have collected includes, extends, transparent cascades.
|
113
155
|
# Now we want to actually include/extend/cascade as appropriate.
|
@@ -118,16 +160,18 @@ module ModuleCluster::CascadeFeatures::PerformCascades
|
|
118
160
|
|
119
161
|
hooked_instance.module_eval do
|
120
162
|
|
121
|
-
if should_include
|
122
|
-
module_self.should_include_or_extend_instance?( set.module_class_instance_or_all,
|
163
|
+
if should_include and
|
164
|
+
module_self.should_include_or_extend_instance?( set.module_class_instance_or_all,
|
165
|
+
hooked_instance ) and
|
123
166
|
! modules.empty?
|
124
167
|
|
125
168
|
include( *modules.reverse )
|
126
169
|
|
127
170
|
end
|
128
171
|
|
129
|
-
if should_extend
|
130
|
-
module_self.should_include_or_extend_instance?( set.module_class_instance_or_all,
|
172
|
+
if should_extend and
|
173
|
+
module_self.should_include_or_extend_instance?( set.module_class_instance_or_all,
|
174
|
+
hooked_instance ) and
|
131
175
|
! modules.empty?
|
132
176
|
|
133
177
|
extend( *modules.reverse )
|
@@ -139,8 +183,9 @@ module ModuleCluster::CascadeFeatures::PerformCascades
|
|
139
183
|
# Otherwise we have an instance:
|
140
184
|
else
|
141
185
|
|
142
|
-
if should_extend
|
143
|
-
module_self.should_include_or_extend_instance?( set.module_class_instance_or_all,
|
186
|
+
if should_extend and
|
187
|
+
module_self.should_include_or_extend_instance?( set.module_class_instance_or_all,
|
188
|
+
hooked_instance ) and
|
144
189
|
! modules.empty?
|
145
190
|
|
146
191
|
hooked_instance.extend( *modules.reverse )
|
@@ -157,7 +202,8 @@ module ModuleCluster::CascadeFeatures::PerformCascades
|
|
157
202
|
|
158
203
|
def should_include_or_extend_instance?( module_class_instance_or_all, into_instance )
|
159
204
|
|
160
|
-
# The set stack already corresponds to include or extend or both,
|
205
|
+
# The set stack already corresponds to include or extend or both,
|
206
|
+
# we are testing all_module_class_or_instance for:
|
161
207
|
#
|
162
208
|
# * any include/extend
|
163
209
|
# * module include/extend
|
@@ -174,12 +220,14 @@ module ModuleCluster::CascadeFeatures::PerformCascades
|
|
174
220
|
should_include_or_extend_instance = into_instance.is_a?( Module )
|
175
221
|
when :module_or_instance, :module_and_instance, :module_instance
|
176
222
|
should_include_or_extend_instance = ( ! into_instance.is_a?( Module ) or
|
177
|
-
( into_instance.is_a?( Module ) &&
|
223
|
+
( into_instance.is_a?( Module ) &&
|
224
|
+
! into_instance.is_a?( Class ) ) )
|
178
225
|
when :class_or_instance, :class_and_instance, :class_instance
|
179
226
|
should_include_or_extend_instance = ( into_instance.is_a?( Class ) or
|
180
227
|
! into_instance.is_a?( Module ) )
|
181
228
|
when :module
|
182
|
-
should_include_or_extend_instance = ( into_instance.is_a?( Module ) &&
|
229
|
+
should_include_or_extend_instance = ( into_instance.is_a?( Module ) &&
|
230
|
+
! into_instance.is_a?( Class ) )
|
183
231
|
when :class
|
184
232
|
should_include_or_extend_instance = into_instance.is_a?( Class )
|
185
233
|
when :instance
|
@@ -198,18 +246,23 @@ module ModuleCluster::CascadeFeatures::PerformCascades
|
|
198
246
|
|
199
247
|
runtime_block_result_modules = nil
|
200
248
|
|
201
|
-
|
249
|
+
block = set.runtime_includes_or_extends_block
|
250
|
+
|
251
|
+
case block.arity
|
202
252
|
when 0
|
203
|
-
runtime_block_result_modules = module_self.instance_eval( &
|
253
|
+
runtime_block_result_modules = module_self.instance_eval( & block )
|
204
254
|
else
|
205
|
-
runtime_block_result_modules = module_self.instance_exec( hooked_instance,
|
255
|
+
runtime_block_result_modules = module_self.instance_exec( hooked_instance,
|
256
|
+
& block )
|
206
257
|
end
|
207
258
|
|
208
259
|
if runtime_block_result_modules
|
209
260
|
|
210
261
|
# make sure we have an array as a result
|
211
|
-
|
212
|
-
|
262
|
+
unless runtime_block_result_modules.is_a?( Array )
|
263
|
+
runtime_block_result_modules = [ runtime_block_result_modules ]
|
264
|
+
end
|
265
|
+
|
213
266
|
# make sure members of our result array are modules
|
214
267
|
runtime_block_result_modules.delete_if do |this_result_instance|
|
215
268
|
! this_result_instance.is_a?( Module )
|
@@ -1,5 +1,5 @@
|
|
1
1
|
|
2
|
-
module ModuleCluster::CascadeFeatures::Subclass
|
2
|
+
module ::ModuleCluster::CascadeFeatures::Subclass
|
3
3
|
|
4
4
|
###############
|
5
5
|
# inherited #
|
@@ -8,10 +8,13 @@ module ModuleCluster::CascadeFeatures::Subclass
|
|
8
8
|
def inherited( hooked_instance )
|
9
9
|
|
10
10
|
# all future subclasses should receive cascading hook
|
11
|
-
hooked_instance.extend( ModuleCluster::CascadeFeatures::Subclass )
|
11
|
+
hooked_instance.extend( ::ModuleCluster::CascadeFeatures::Subclass )
|
12
12
|
hooked_instance.cluster_stack.inherited_hooks.concat( cluster_stack.inherited_hooks )
|
13
13
|
|
14
|
-
ModuleCluster::CascadeFeatures.perform_cascades( self,
|
14
|
+
::ModuleCluster::CascadeFeatures.perform_cascades( self,
|
15
|
+
:inherited,
|
16
|
+
hooked_instance,
|
17
|
+
cluster_stack.inherited_hooks )
|
15
18
|
|
16
19
|
super
|
17
20
|
|
@@ -1,5 +1,5 @@
|
|
1
1
|
|
2
|
-
module ModuleCluster::CascadeFeatures
|
2
|
+
module ::ModuleCluster::CascadeFeatures
|
3
3
|
|
4
4
|
extend ::ModuleCluster::CascadeFeatures::PerformCascades
|
5
5
|
|
@@ -9,7 +9,7 @@ module ModuleCluster::CascadeFeatures
|
|
9
9
|
|
10
10
|
def append_features( hooked_instance )
|
11
11
|
|
12
|
-
ModuleCluster::CascadeFeatures.perform_cascades( self, :prepend_include, hooked_instance, cluster_stack.prepend_include_hooks )
|
12
|
+
::ModuleCluster::CascadeFeatures.perform_cascades( self, :prepend_include, hooked_instance, cluster_stack.prepend_include_hooks )
|
13
13
|
|
14
14
|
super
|
15
15
|
|
@@ -23,7 +23,7 @@ module ModuleCluster::CascadeFeatures
|
|
23
23
|
|
24
24
|
super
|
25
25
|
|
26
|
-
ModuleCluster::CascadeFeatures.perform_cascades( self, :include, hooked_instance, cluster_stack.include_hooks )
|
26
|
+
::ModuleCluster::CascadeFeatures.perform_cascades( self, :include, hooked_instance, cluster_stack.include_hooks )
|
27
27
|
|
28
28
|
end
|
29
29
|
|
@@ -33,7 +33,7 @@ module ModuleCluster::CascadeFeatures
|
|
33
33
|
|
34
34
|
def extend_object( hooked_instance )
|
35
35
|
|
36
|
-
ModuleCluster::CascadeFeatures.perform_cascades( self, :prepend_extend, hooked_instance, cluster_stack.prepend_extend_hooks )
|
36
|
+
::ModuleCluster::CascadeFeatures.perform_cascades( self, :prepend_extend, hooked_instance, cluster_stack.prepend_extend_hooks )
|
37
37
|
|
38
38
|
super
|
39
39
|
|
@@ -47,7 +47,7 @@ module ModuleCluster::CascadeFeatures
|
|
47
47
|
|
48
48
|
super
|
49
49
|
|
50
|
-
ModuleCluster::CascadeFeatures.perform_cascades( self, :extend, hooked_instance, cluster_stack.extend_hooks )
|
50
|
+
::ModuleCluster::CascadeFeatures.perform_cascades( self, :extend, hooked_instance, cluster_stack.extend_hooks )
|
51
51
|
|
52
52
|
end
|
53
53
|
|
@@ -1,36 +1,36 @@
|
|
1
1
|
|
2
|
-
module ModuleCluster::ClusterStack::Block::Class
|
2
|
+
module ::ModuleCluster::ClusterStack::Block::Class
|
3
3
|
|
4
4
|
###################
|
5
5
|
# class_include #
|
6
6
|
###################
|
7
7
|
|
8
|
-
def class_include( dependency_module, runtime_block )
|
9
|
-
include_hooks.push( ModuleCluster::ClusterStack::Block::Set.new( dependency_module, runtime_block ) )
|
8
|
+
def class_include( dependency_module, dependency_method, runtime_block )
|
9
|
+
include_hooks.push( ::ModuleCluster::ClusterStack::Block::Set.new( dependency_module, dependency_method, runtime_block ) )
|
10
10
|
end
|
11
11
|
|
12
12
|
##################
|
13
13
|
# class_extend #
|
14
14
|
##################
|
15
15
|
|
16
|
-
def class_extend( dependency_module, runtime_block )
|
17
|
-
extend_hooks.push( ModuleCluster::ClusterStack::Block::Set.new( dependency_module, runtime_block ) )
|
16
|
+
def class_extend( dependency_module, dependency_method, runtime_block )
|
17
|
+
extend_hooks.push( ::ModuleCluster::ClusterStack::Block::Set.new( dependency_module, dependency_method, runtime_block ) )
|
18
18
|
end
|
19
19
|
|
20
20
|
###########################
|
21
21
|
# prepend_class_include #
|
22
22
|
###########################
|
23
23
|
|
24
|
-
def prepend_class_include( dependency_module, runtime_block )
|
25
|
-
prepend_include_hooks.push( ModuleCluster::ClusterStack::Block::Set.new( dependency_module, runtime_block ) )
|
24
|
+
def prepend_class_include( dependency_module, dependency_method, runtime_block )
|
25
|
+
prepend_include_hooks.push( ::ModuleCluster::ClusterStack::Block::Set.new( dependency_module, dependency_method, runtime_block ) )
|
26
26
|
end
|
27
27
|
|
28
28
|
##########################
|
29
29
|
# prepend_class_extend #
|
30
30
|
##########################
|
31
31
|
|
32
|
-
def prepend_class_extend( dependency_module, runtime_block )
|
33
|
-
prepend_extend_hooks.push( ModuleCluster::ClusterStack::Block::Set.new( dependency_module, runtime_block ) )
|
32
|
+
def prepend_class_extend( dependency_module, dependency_method, runtime_block )
|
33
|
+
prepend_extend_hooks.push( ::ModuleCluster::ClusterStack::Block::Set.new( dependency_module, dependency_method, runtime_block ) )
|
34
34
|
end
|
35
35
|
|
36
36
|
end
|
@@ -1,5 +1,5 @@
|
|
1
1
|
|
2
|
-
module ModuleCluster::ClusterStack::Block::Inherited
|
2
|
+
module ::ModuleCluster::ClusterStack::Block::Inherited
|
3
3
|
|
4
4
|
#####################
|
5
5
|
# inherited_hooks #
|
@@ -13,8 +13,8 @@ module ModuleCluster::ClusterStack::Block::Inherited
|
|
13
13
|
# subclass #
|
14
14
|
##############
|
15
15
|
|
16
|
-
def subclass( dependency_module, runtime_block )
|
17
|
-
inherited_hooks.push( ModuleCluster::ClusterStack::Block::Set.new( dependency_module, runtime_block ) )
|
16
|
+
def subclass( dependency_module, dependency_method, runtime_block )
|
17
|
+
inherited_hooks.push( ::ModuleCluster::ClusterStack::Block::Set.new( dependency_module, dependency_method, runtime_block ) )
|
18
18
|
end
|
19
19
|
|
20
20
|
end
|
@@ -1,20 +1,20 @@
|
|
1
1
|
|
2
|
-
module ModuleCluster::ClusterStack::Block::Instance
|
2
|
+
module ::ModuleCluster::ClusterStack::Block::Instance
|
3
3
|
|
4
4
|
#####################
|
5
5
|
# instance_extend #
|
6
6
|
#####################
|
7
7
|
|
8
|
-
def instance_extend( dependency_module, runtime_block )
|
9
|
-
extend_hooks.push( ModuleCluster::ClusterStack::Block::Set.new( dependency_module, runtime_block ) )
|
8
|
+
def instance_extend( dependency_module, dependency_method, runtime_block )
|
9
|
+
extend_hooks.push( ::ModuleCluster::ClusterStack::Block::Set.new( dependency_module, dependency_method, runtime_block ) )
|
10
10
|
end
|
11
11
|
|
12
12
|
#############################
|
13
13
|
# prepend_instance_extend #
|
14
14
|
#############################
|
15
15
|
|
16
|
-
def prepend_instance_extend( dependency_module, runtime_block )
|
17
|
-
prepend_extend_hooks.push( ModuleCluster::ClusterStack::Block::Set.new( dependency_module, runtime_block ) )
|
16
|
+
def prepend_instance_extend( dependency_module, dependency_method, runtime_block )
|
17
|
+
prepend_extend_hooks.push( ::ModuleCluster::ClusterStack::Block::Set.new( dependency_module, dependency_method, runtime_block ) )
|
18
18
|
end
|
19
19
|
|
20
20
|
end
|
@@ -1,36 +1,36 @@
|
|
1
1
|
|
2
|
-
module ModuleCluster::ClusterStack::Block::Module
|
2
|
+
module ::ModuleCluster::ClusterStack::Block::Module
|
3
3
|
|
4
4
|
####################
|
5
5
|
# module_include #
|
6
6
|
####################
|
7
7
|
|
8
|
-
def module_include( dependency_module, runtime_block )
|
9
|
-
include_hooks.push( ModuleCluster::ClusterStack::Block::Set.new( dependency_module, runtime_block ) )
|
8
|
+
def module_include( dependency_module, dependency_method, runtime_block )
|
9
|
+
include_hooks.push( ::ModuleCluster::ClusterStack::Block::Set.new( dependency_module, dependency_method, runtime_block ) )
|
10
10
|
end
|
11
11
|
|
12
12
|
###################
|
13
13
|
# module_extend #
|
14
14
|
###################
|
15
15
|
|
16
|
-
def module_extend( dependency_module, runtime_block )
|
17
|
-
extend_hooks.push( ModuleCluster::ClusterStack::Block::Set.new( dependency_module, runtime_block ) )
|
16
|
+
def module_extend( dependency_module, dependency_method, runtime_block )
|
17
|
+
extend_hooks.push( ::ModuleCluster::ClusterStack::Block::Set.new( dependency_module, dependency_method, runtime_block ) )
|
18
18
|
end
|
19
19
|
|
20
20
|
############################
|
21
21
|
# prepend_module_include #
|
22
22
|
############################
|
23
23
|
|
24
|
-
def prepend_module_include( dependency_module, runtime_block )
|
25
|
-
prepend_include_hooks.push( ModuleCluster::ClusterStack::Block::Set.new( dependency_module, runtime_block ) )
|
24
|
+
def prepend_module_include( dependency_module, dependency_method, runtime_block )
|
25
|
+
prepend_include_hooks.push( ::ModuleCluster::ClusterStack::Block::Set.new( dependency_module, dependency_method, runtime_block ) )
|
26
26
|
end
|
27
27
|
|
28
28
|
###########################
|
29
29
|
# prepend_module_extend #
|
30
30
|
###########################
|
31
31
|
|
32
|
-
def prepend_module_extend( dependency_module, runtime_block )
|
33
|
-
prepend_extend_hooks.push( ModuleCluster::ClusterStack::Block::Set.new( dependency_module, runtime_block ) )
|
32
|
+
def prepend_module_extend( dependency_module, dependency_method, runtime_block )
|
33
|
+
prepend_extend_hooks.push( ::ModuleCluster::ClusterStack::Block::Set.new( dependency_module, dependency_method, runtime_block ) )
|
34
34
|
end
|
35
35
|
|
36
36
|
end
|
@@ -1,5 +1,5 @@
|
|
1
1
|
|
2
|
-
module ModuleCluster::ClusterStack::Extends
|
2
|
+
module ::ModuleCluster::ClusterStack::Extends
|
3
3
|
|
4
4
|
##################
|
5
5
|
# extend_hooks #
|
@@ -14,7 +14,7 @@ module ModuleCluster::ClusterStack::Extends
|
|
14
14
|
#####################
|
15
15
|
|
16
16
|
def extend_includes( module_instance, method, includes, runtime_includes_block )
|
17
|
-
new_set = ModuleCluster::ClusterStack::Set.new( module_instance, method, :all, :include, includes, runtime_includes_block )
|
17
|
+
new_set = ::ModuleCluster::ClusterStack::Set.new( module_instance, method, :all, :include, includes, runtime_includes_block )
|
18
18
|
extend_hooks.push( new_set )
|
19
19
|
return new_set
|
20
20
|
end
|
@@ -24,7 +24,7 @@ module ModuleCluster::ClusterStack::Extends
|
|
24
24
|
####################
|
25
25
|
|
26
26
|
def extend_extends( module_instance, method, extends, runtime_extends_block )
|
27
|
-
new_set = ModuleCluster::ClusterStack::Set.new( module_instance, method, :all, :extend, extends, runtime_extends_block )
|
27
|
+
new_set = ::ModuleCluster::ClusterStack::Set.new( module_instance, method, :all, :extend, extends, runtime_extends_block )
|
28
28
|
extend_hooks.push( new_set )
|
29
29
|
return new_set
|
30
30
|
end
|
@@ -34,7 +34,7 @@ module ModuleCluster::ClusterStack::Extends
|
|
34
34
|
#################################
|
35
35
|
|
36
36
|
def extend_includes_and_extends( module_instance, method, includes_and_extends, runtime_includes_and_extends_block )
|
37
|
-
new_set = ModuleCluster::ClusterStack::Set.new( module_instance, method, :all, :include_and_extend, includes_and_extends, runtime_includes_and_extends_block )
|
37
|
+
new_set = ::ModuleCluster::ClusterStack::Set.new( module_instance, method, :all, :include_and_extend, includes_and_extends, runtime_includes_and_extends_block )
|
38
38
|
extend_hooks.push( new_set )
|
39
39
|
return new_set
|
40
40
|
end
|
@@ -44,7 +44,7 @@ module ModuleCluster::ClusterStack::Extends
|
|
44
44
|
############################
|
45
45
|
|
46
46
|
def module_extend_includes( module_instance, method, includes, runtime_includes_block )
|
47
|
-
new_set = ModuleCluster::ClusterStack::Set.new( module_instance, method, :module, :include, includes, runtime_includes_block )
|
47
|
+
new_set = ::ModuleCluster::ClusterStack::Set.new( module_instance, method, :module, :include, includes, runtime_includes_block )
|
48
48
|
extend_hooks.push( new_set )
|
49
49
|
return new_set
|
50
50
|
end
|
@@ -54,7 +54,7 @@ module ModuleCluster::ClusterStack::Extends
|
|
54
54
|
###########################
|
55
55
|
|
56
56
|
def module_extend_extends( module_instance, method, extends, runtime_extends_block )
|
57
|
-
new_set = ModuleCluster::ClusterStack::Set.new( module_instance, method, :module, :extend, extends, runtime_extends_block )
|
57
|
+
new_set = ::ModuleCluster::ClusterStack::Set.new( module_instance, method, :module, :extend, extends, runtime_extends_block )
|
58
58
|
extend_hooks.push( new_set )
|
59
59
|
return new_set
|
60
60
|
end
|
@@ -64,7 +64,7 @@ module ModuleCluster::ClusterStack::Extends
|
|
64
64
|
########################################
|
65
65
|
|
66
66
|
def module_extend_includes_and_extends( module_instance, method, includes_and_extends, runtime_includes_and_extends_block )
|
67
|
-
new_set = ModuleCluster::ClusterStack::Set.new( module_instance, method, :module, :include_and_extend, includes_and_extends, runtime_includes_and_extends_block )
|
67
|
+
new_set = ::ModuleCluster::ClusterStack::Set.new( module_instance, method, :module, :include_and_extend, includes_and_extends, runtime_includes_and_extends_block )
|
68
68
|
extend_hooks.push( new_set )
|
69
69
|
return new_set
|
70
70
|
end
|
@@ -74,7 +74,7 @@ module ModuleCluster::ClusterStack::Extends
|
|
74
74
|
###########################
|
75
75
|
|
76
76
|
def class_extend_includes( module_instance, method, includes, runtime_includes_block )
|
77
|
-
new_set = ModuleCluster::ClusterStack::Set.new( module_instance, method, :class, :include, includes, runtime_includes_block )
|
77
|
+
new_set = ::ModuleCluster::ClusterStack::Set.new( module_instance, method, :class, :include, includes, runtime_includes_block )
|
78
78
|
extend_hooks.push( new_set )
|
79
79
|
return new_set
|
80
80
|
end
|
@@ -84,7 +84,7 @@ module ModuleCluster::ClusterStack::Extends
|
|
84
84
|
##########################
|
85
85
|
|
86
86
|
def class_extend_extends( module_instance, method, extends, runtime_extends_block )
|
87
|
-
new_set = ModuleCluster::ClusterStack::Set.new( module_instance, method, :class, :extend, extends, runtime_extends_block )
|
87
|
+
new_set = ::ModuleCluster::ClusterStack::Set.new( module_instance, method, :class, :extend, extends, runtime_extends_block )
|
88
88
|
extend_hooks.push( new_set )
|
89
89
|
return new_set
|
90
90
|
end
|
@@ -94,7 +94,7 @@ module ModuleCluster::ClusterStack::Extends
|
|
94
94
|
#######################################
|
95
95
|
|
96
96
|
def class_extend_includes_and_extends( module_instance, method, includes_and_extends, runtime_includes_and_extends_block )
|
97
|
-
new_set = ModuleCluster::ClusterStack::Set.new( module_instance, method, :class, :include_and_extend, includes_and_extends, runtime_includes_and_extends_block )
|
97
|
+
new_set = ::ModuleCluster::ClusterStack::Set.new( module_instance, method, :class, :include_and_extend, includes_and_extends, runtime_includes_and_extends_block )
|
98
98
|
extend_hooks.push( new_set )
|
99
99
|
return new_set
|
100
100
|
end
|
@@ -104,7 +104,7 @@ module ModuleCluster::ClusterStack::Extends
|
|
104
104
|
##############################
|
105
105
|
|
106
106
|
def instance_extend_includes( module_instance, method, includes, runtime_includes_block )
|
107
|
-
new_set = ModuleCluster::ClusterStack::Set.new( module_instance, method, :instance, :include, includes, runtime_includes_block )
|
107
|
+
new_set = ::ModuleCluster::ClusterStack::Set.new( module_instance, method, :instance, :include, includes, runtime_includes_block )
|
108
108
|
extend_hooks.push( new_set )
|
109
109
|
return new_set
|
110
110
|
end
|
@@ -114,7 +114,7 @@ module ModuleCluster::ClusterStack::Extends
|
|
114
114
|
#############################
|
115
115
|
|
116
116
|
def instance_extend_extends( module_instance, method, extends, runtime_extends_block )
|
117
|
-
new_set = ModuleCluster::ClusterStack::Set.new( module_instance, method, :instance, :extend, extends, runtime_extends_block )
|
117
|
+
new_set = ::ModuleCluster::ClusterStack::Set.new( module_instance, method, :instance, :extend, extends, runtime_extends_block )
|
118
118
|
extend_hooks.push( new_set )
|
119
119
|
return new_set
|
120
120
|
end
|
@@ -124,7 +124,7 @@ module ModuleCluster::ClusterStack::Extends
|
|
124
124
|
##########################################
|
125
125
|
|
126
126
|
def instance_extend_includes_and_extends( module_instance, method, includes_and_extends, runtime_includes_and_extends_block )
|
127
|
-
new_set = ModuleCluster::ClusterStack::Set.new( module_instance, method, :instance, :include_and_extend, includes_and_extends, runtime_includes_and_extends_block )
|
127
|
+
new_set = ::ModuleCluster::ClusterStack::Set.new( module_instance, method, :instance, :include_and_extend, includes_and_extends, runtime_includes_and_extends_block )
|
128
128
|
extend_hooks.push( new_set )
|
129
129
|
return new_set
|
130
130
|
end
|
@@ -1,5 +1,5 @@
|
|
1
1
|
|
2
|
-
module ModuleCluster::ClusterStack::Includes
|
2
|
+
module ::ModuleCluster::ClusterStack::Includes
|
3
3
|
|
4
4
|
###################
|
5
5
|
# include_hooks #
|
@@ -14,7 +14,7 @@ module ModuleCluster::ClusterStack::Includes
|
|
14
14
|
######################
|
15
15
|
|
16
16
|
def include_includes( module_instance, method, includes, runtime_includes_block )
|
17
|
-
new_set = ModuleCluster::ClusterStack::Set.new( module_instance, method, :all, :include, includes, runtime_includes_block )
|
17
|
+
new_set = ::ModuleCluster::ClusterStack::Set.new( module_instance, method, :all, :include, includes, runtime_includes_block )
|
18
18
|
include_hooks.push( new_set )
|
19
19
|
return new_set
|
20
20
|
end
|
@@ -24,7 +24,7 @@ module ModuleCluster::ClusterStack::Includes
|
|
24
24
|
#####################
|
25
25
|
|
26
26
|
def include_extends( module_instance, method, extends, runtime_extends_block )
|
27
|
-
new_set = ModuleCluster::ClusterStack::Set.new( module_instance, method, :all, :extend, extends, runtime_extends_block )
|
27
|
+
new_set = ::ModuleCluster::ClusterStack::Set.new( module_instance, method, :all, :extend, extends, runtime_extends_block )
|
28
28
|
include_hooks.push( new_set )
|
29
29
|
return new_set
|
30
30
|
end
|
@@ -34,7 +34,7 @@ module ModuleCluster::ClusterStack::Includes
|
|
34
34
|
##################################
|
35
35
|
|
36
36
|
def include_includes_and_extends( module_instance, method, includes_and_extends, runtime_includes_and_extends_block )
|
37
|
-
new_set = ModuleCluster::ClusterStack::Set.new( module_instance, method, :all, :include_and_extend, includes_and_extends, runtime_includes_and_extends_block )
|
37
|
+
new_set = ::ModuleCluster::ClusterStack::Set.new( module_instance, method, :all, :include_and_extend, includes_and_extends, runtime_includes_and_extends_block )
|
38
38
|
include_hooks.push( new_set )
|
39
39
|
return new_set
|
40
40
|
end
|
@@ -44,7 +44,7 @@ module ModuleCluster::ClusterStack::Includes
|
|
44
44
|
#############################
|
45
45
|
|
46
46
|
def module_include_includes( module_instance, method, includes, runtime_includes_block )
|
47
|
-
new_set = ModuleCluster::ClusterStack::Set.new( module_instance, method, :module, :include, includes, runtime_includes_block )
|
47
|
+
new_set = ::ModuleCluster::ClusterStack::Set.new( module_instance, method, :module, :include, includes, runtime_includes_block )
|
48
48
|
include_hooks.push( new_set )
|
49
49
|
return new_set
|
50
50
|
end
|
@@ -54,7 +54,7 @@ module ModuleCluster::ClusterStack::Includes
|
|
54
54
|
############################
|
55
55
|
|
56
56
|
def module_include_extends( module_instance, method, extends, runtime_extends_block )
|
57
|
-
new_set = ModuleCluster::ClusterStack::Set.new( module_instance, method, :module, :extend, extends, runtime_extends_block )
|
57
|
+
new_set = ::ModuleCluster::ClusterStack::Set.new( module_instance, method, :module, :extend, extends, runtime_extends_block )
|
58
58
|
include_hooks.push( new_set )
|
59
59
|
return new_set
|
60
60
|
end
|
@@ -64,7 +64,7 @@ module ModuleCluster::ClusterStack::Includes
|
|
64
64
|
#########################################
|
65
65
|
|
66
66
|
def module_include_includes_and_extends( module_instance, method, includes_and_extends, runtime_includes_and_extends_block )
|
67
|
-
new_set = ModuleCluster::ClusterStack::Set.new( module_instance, method, :module, :include_and_extend, includes_and_extends, runtime_includes_and_extends_block )
|
67
|
+
new_set = ::ModuleCluster::ClusterStack::Set.new( module_instance, method, :module, :include_and_extend, includes_and_extends, runtime_includes_and_extends_block )
|
68
68
|
include_hooks.push( new_set )
|
69
69
|
return new_set
|
70
70
|
end
|
@@ -74,7 +74,7 @@ module ModuleCluster::ClusterStack::Includes
|
|
74
74
|
############################
|
75
75
|
|
76
76
|
def class_include_includes( module_instance, method, includes, runtime_includes_block )
|
77
|
-
new_set = ModuleCluster::ClusterStack::Set.new( module_instance, method, :class, :include, includes, runtime_includes_block )
|
77
|
+
new_set = ::ModuleCluster::ClusterStack::Set.new( module_instance, method, :class, :include, includes, runtime_includes_block )
|
78
78
|
include_hooks.push( new_set )
|
79
79
|
return new_set
|
80
80
|
end
|
@@ -84,7 +84,7 @@ module ModuleCluster::ClusterStack::Includes
|
|
84
84
|
###########################
|
85
85
|
|
86
86
|
def class_include_extends( module_instance, method, extends, runtime_extends_block )
|
87
|
-
new_set = ModuleCluster::ClusterStack::Set.new( module_instance, method, :class, :extend, extends, runtime_extends_block )
|
87
|
+
new_set = ::ModuleCluster::ClusterStack::Set.new( module_instance, method, :class, :extend, extends, runtime_extends_block )
|
88
88
|
include_hooks.push( new_set )
|
89
89
|
return new_set
|
90
90
|
end
|
@@ -94,7 +94,7 @@ module ModuleCluster::ClusterStack::Includes
|
|
94
94
|
########################################
|
95
95
|
|
96
96
|
def class_include_includes_and_extends( module_instance, method, includes_and_extends, runtime_includes_and_extends_block )
|
97
|
-
new_set = ModuleCluster::ClusterStack::Set.new( module_instance, method, :class, :include_and_extend, includes_and_extends, runtime_includes_and_extends_block )
|
97
|
+
new_set = ::ModuleCluster::ClusterStack::Set.new( module_instance, method, :class, :include_and_extend, includes_and_extends, runtime_includes_and_extends_block )
|
98
98
|
include_hooks.push( new_set )
|
99
99
|
return new_set
|
100
100
|
end
|