module-cluster 1.4.0 → 1.4.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (50) hide show
  1. data/README.md +66 -29
  2. data/README.rdoc +66 -29
  3. data/lib/module-cluster.rb +18 -0
  4. data/lib/module-cluster/ModuleCluster.rb +2 -7
  5. data/lib/module-cluster/ModuleCluster/Define/Block.rb +4 -4
  6. data/lib/module-cluster/ModuleCluster/Define/Block/Class.rb +11 -8
  7. data/lib/module-cluster/ModuleCluster/Define/Block/ClassOrInstance.rb +19 -12
  8. data/lib/module-cluster/ModuleCluster/Define/Block/ClassOrModule.rb +19 -12
  9. data/lib/module-cluster/ModuleCluster/Define/Block/ClassOrModuleOrInstance.rb +19 -12
  10. data/lib/module-cluster/ModuleCluster/Define/Block/Instance.rb +3 -2
  11. data/lib/module-cluster/ModuleCluster/Define/Block/Module.rb +11 -8
  12. data/lib/module-cluster/ModuleCluster/Define/Block/ModuleOrInstance.rb +19 -12
  13. data/lib/module-cluster/ModuleCluster/Define/ClassCluster.rb +39 -46
  14. data/lib/module-cluster/ModuleCluster/Define/ClassOrInstanceCluster.rb +34 -33
  15. data/lib/module-cluster/ModuleCluster/Define/Cluster.rb +31 -42
  16. data/lib/module-cluster/ModuleCluster/Define/ClusterCascades.rb +53 -62
  17. data/lib/module-cluster/ModuleCluster/Define/ClusterCascadesToClass.rb +49 -60
  18. data/lib/module-cluster/ModuleCluster/Define/ClusterCascadesToModule.rb +49 -60
  19. data/lib/module-cluster/ModuleCluster/Define/InstanceCluster.rb +3 -4
  20. data/lib/module-cluster/ModuleCluster/Define/ModuleCluster.rb +39 -46
  21. data/lib/module-cluster/ModuleCluster/Define/ModuleOrClassCluster.rb +55 -54
  22. data/lib/module-cluster/ModuleCluster/Define/ModuleOrInstanceCluster.rb +34 -33
  23. data/lib/module-cluster/_private_/ModuleCluster/CascadeFeatures.rb +4 -4
  24. data/lib/module-cluster/_private_/ModuleCluster/CascadeFeatures/ClusterStack.rb +1 -1
  25. data/lib/module-cluster/_private_/ModuleCluster/CascadeFeatures/PerformCascades.rb +64 -46
  26. data/lib/module-cluster/_private_/ModuleCluster/ClusterStack.rb +7 -5
  27. data/lib/module-cluster/_private_/ModuleCluster/ClusterStack/Block.rb +3 -3
  28. data/lib/module-cluster/_private_/ModuleCluster/ClusterStack/Block/Class.rb +2 -2
  29. data/lib/module-cluster/_private_/ModuleCluster/ClusterStack/Block/Instance.rb +1 -1
  30. data/lib/module-cluster/_private_/ModuleCluster/ClusterStack/Block/Module.rb +2 -2
  31. data/lib/module-cluster/_private_/ModuleCluster/ClusterStack/Block/Set.rb +4 -1
  32. data/lib/module-cluster/_private_/ModuleCluster/ClusterStack/Extends.rb +45 -13
  33. data/lib/module-cluster/_private_/ModuleCluster/ClusterStack/Includes.rb +36 -10
  34. data/lib/module-cluster/_private_/ModuleCluster/ClusterStack/PrependsExtends.rb +47 -15
  35. data/lib/module-cluster/_private_/ModuleCluster/ClusterStack/PrependsIncludes.rb +38 -12
  36. data/lib/module-cluster/_private_/ModuleCluster/ClusterStack/Set.rb +29 -1
  37. data/lib/module-cluster/_private_/ModuleCluster/ExtendForCascade.rb +8 -3
  38. data/spec/ModuleCluster/Define/ClassCluster_spec.rb +18 -18
  39. data/spec/ModuleCluster/Define/ClassOrInstanceCluster_spec.rb +10 -10
  40. data/spec/ModuleCluster/Define/ClusterCascadesToClass_spec.rb +18 -18
  41. data/spec/ModuleCluster/Define/ClusterCascadesToModule_spec.rb +18 -18
  42. data/spec/ModuleCluster/Define/ClusterCascades_spec.rb +18 -18
  43. data/spec/ModuleCluster/Define/Cluster_spec.rb +18 -18
  44. data/spec/ModuleCluster/Define/InstanceCluster_spec.rb +2 -2
  45. data/spec/ModuleCluster/Define/ModuleCluster_spec.rb +18 -18
  46. data/spec/ModuleCluster/Define/ModuleOrClassCluster_spec.rb +18 -18
  47. data/spec/ModuleCluster/Define/ModuleOrInstanceCluster_spec.rb +10 -10
  48. data/spec/ModuleCluster_spec.rb +5 -5
  49. data/spec/_private_/ModuleCluster/CascadeFeatures/PerformCascades_spec.rb +110 -2
  50. metadata +2 -2
@@ -2,6 +2,7 @@
2
2
  module ModuleCluster::Define::ClusterCascadesToClass
3
3
 
4
4
  include ModuleCluster::CascadeFeatures::ClusterStack
5
+ include ModuleCluster::Suspend::WithoutHooks
5
6
 
6
7
  extend ModuleCluster::ExtendForCascade
7
8
 
@@ -26,8 +27,7 @@ module ModuleCluster::Define::ClusterCascadesToClass
26
27
  ########################################
27
28
 
28
29
  def include_cascades_includes_to_class( *includes, & runtime_includes_block )
29
- cluster_stack.include_includes( ModuleCluster::Define::ClusterCascadesToClass, __method__, includes, runtime_includes_block )
30
- return self
30
+ return cluster_stack.include_includes( ModuleCluster::Define::ClusterCascadesToClass, __method__, includes, runtime_includes_block )
31
31
  end
32
32
 
33
33
  #######################################
@@ -35,8 +35,7 @@ module ModuleCluster::Define::ClusterCascadesToClass
35
35
  #######################################
36
36
 
37
37
  def include_cascades_extends_to_class( *extends, & runtime_extends_block )
38
- cluster_stack.include_extends( ModuleCluster::Define::ClusterCascadesToClass, __method__, extends, runtime_extends_block )
39
- return self
38
+ return cluster_stack.include_extends( ModuleCluster::Define::ClusterCascadesToClass, __method__, extends, runtime_extends_block )
40
39
  end
41
40
 
42
41
  ####################################################
@@ -44,8 +43,7 @@ module ModuleCluster::Define::ClusterCascadesToClass
44
43
  ####################################################
45
44
 
46
45
  def include_cascades_includes_and_extends_to_class( *includes_and_extends, & runtime_includes_and_extends_block )
47
- cluster_stack.include_includes_and_extends( ModuleCluster::Define::ClusterCascadesToClass, __method__, includes_and_extends, runtime_includes_and_extends_block )
48
- return self
46
+ return cluster_stack.include_includes_and_extends( ModuleCluster::Define::ClusterCascadesToClass, __method__, includes_and_extends, runtime_includes_and_extends_block )
49
47
  end
50
48
 
51
49
  #######################################
@@ -53,8 +51,7 @@ module ModuleCluster::Define::ClusterCascadesToClass
53
51
  #######################################
54
52
 
55
53
  def extend_cascades_includes_to_class( *includes, & runtime_includes_block )
56
- cluster_stack.extend_includes( ModuleCluster::Define::ClusterCascadesToClass, __method__, includes, runtime_includes_block )
57
- return self
54
+ return cluster_stack.extend_includes( ModuleCluster::Define::ClusterCascadesToClass, __method__, includes, runtime_includes_block )
58
55
  end
59
56
 
60
57
  ######################################
@@ -62,8 +59,7 @@ module ModuleCluster::Define::ClusterCascadesToClass
62
59
  ######################################
63
60
 
64
61
  def extend_cascades_extends_to_class( *extends, & runtime_extends_block )
65
- cluster_stack.extend_extends( ModuleCluster::Define::ClusterCascadesToClass, __method__, extends, runtime_extends_block )
66
- return self
62
+ return cluster_stack.extend_extends( ModuleCluster::Define::ClusterCascadesToClass, __method__, extends, runtime_extends_block )
67
63
  end
68
64
 
69
65
  ###################################################
@@ -71,62 +67,55 @@ module ModuleCluster::Define::ClusterCascadesToClass
71
67
  ###################################################
72
68
 
73
69
  def extend_cascades_includes_and_extends_to_class( *includes_and_extends, & runtime_includes_and_extends_block )
74
- cluster_stack.extend_includes_and_extends( ModuleCluster::Define::ClusterCascadesToClass, __method__, includes_and_extends, runtime_includes_and_extends_block )
75
- return self
70
+ return cluster_stack.extend_includes_and_extends( ModuleCluster::Define::ClusterCascadesToClass, __method__, includes_and_extends, runtime_includes_and_extends_block )
76
71
  end
77
72
 
78
73
  ###################################################
79
- # include_cascades_to_class_prepending_includes #
74
+ # include_cascades_to_class_prepend_includes #
80
75
  ###################################################
81
76
 
82
- def include_cascades_to_class_prepending_includes( *includes, & runtime_includes_block )
83
- cluster_stack.include_prepends_includes( ModuleCluster::Define::ClusterCascadesToClass, __method__, includes, runtime_includes_block )
84
- return self
77
+ def include_cascades_to_class_prepend_includes( *includes, & runtime_includes_block )
78
+ return cluster_stack.include_prepends_includes( ModuleCluster::Define::ClusterCascadesToClass, __method__, includes, runtime_includes_block )
85
79
  end
86
80
 
87
81
  ##################################################
88
- # include_cascades_to_class_prepending_extends #
82
+ # include_cascades_to_class_prepend_extends #
89
83
  ##################################################
90
84
 
91
- def include_cascades_to_class_prepending_extends( *extends, & runtime_extends_block )
92
- cluster_stack.include_prepends_extends( ModuleCluster::Define::ClusterCascadesToClass, __method__, extends, runtime_extends_block )
93
- return self
85
+ def include_cascades_to_class_prepend_extends( *extends, & runtime_extends_block )
86
+ return cluster_stack.include_prepends_extends( ModuleCluster::Define::ClusterCascadesToClass, __method__, extends, runtime_extends_block )
94
87
  end
95
88
 
96
89
  ###############################################################
97
- # include_cascades_to_class_prepending_includes_and_extends #
90
+ # include_cascades_to_class_prepend_includes_and_extends #
98
91
  ###############################################################
99
92
 
100
- def include_cascades_to_class_prepending_includes_and_extends( *includes_and_extends, & runtime_includes_and_extends_block )
101
- cluster_stack.include_prepends_includes_and_extends( ModuleCluster::Define::ClusterCascadesToClass, __method__, includes_and_extends, runtime_includes_and_extends_block )
102
- return self
93
+ def include_cascades_to_class_prepend_includes_and_extends( *includes_and_extends, & runtime_includes_and_extends_block )
94
+ return cluster_stack.include_prepends_includes_and_extends( ModuleCluster::Define::ClusterCascadesToClass, __method__, includes_and_extends, runtime_includes_and_extends_block )
103
95
  end
104
96
 
105
97
  ##################################################
106
- # extend_cascades_to_class_prepending_includes #
98
+ # extend_cascades_to_class_prepend_includes #
107
99
  ##################################################
108
100
 
109
- def extend_cascades_to_class_prepending_includes( *includes, & runtime_includes_block )
110
- cluster_stack.extend_prepends_includes( ModuleCluster::Define::ClusterCascadesToClass, __method__, includes, runtime_includes_block )
111
- return self
101
+ def extend_cascades_to_class_prepend_includes( *includes, & runtime_includes_block )
102
+ return cluster_stack.extend_prepends_includes( ModuleCluster::Define::ClusterCascadesToClass, __method__, includes, runtime_includes_block )
112
103
  end
113
104
 
114
105
  #################################################
115
- # extend_cascades_to_class_prepending_extends #
106
+ # extend_cascades_to_class_prepend_extends #
116
107
  #################################################
117
108
 
118
- def extend_cascades_to_class_prepending_extends( *extends, & runtime_extends_block )
119
- cluster_stack.extend_prepends_extends( ModuleCluster::Define::ClusterCascadesToClass, __method__, extends, runtime_extends_block )
120
- return self
109
+ def extend_cascades_to_class_prepend_extends( *extends, & runtime_extends_block )
110
+ return cluster_stack.extend_prepends_extends( ModuleCluster::Define::ClusterCascadesToClass, __method__, extends, runtime_extends_block )
121
111
  end
122
112
 
123
113
  ##############################################################
124
- # extend_cascades_to_class_prepending_includes_and_extends #
114
+ # extend_cascades_to_class_prepend_includes_and_extends #
125
115
  ##############################################################
126
116
 
127
- def extend_cascades_to_class_prepending_includes_and_extends( *includes_and_extends, & runtime_includes_and_extends_block )
128
- cluster_stack.extend_prepends_includes_and_extends( ModuleCluster::Define::ClusterCascadesToClass, __method__, includes_and_extends, runtime_includes_and_extends_block )
129
- return self
117
+ def extend_cascades_to_class_prepend_includes_and_extends( *includes_and_extends, & runtime_includes_and_extends_block )
118
+ return cluster_stack.extend_prepends_includes_and_extends( ModuleCluster::Define::ClusterCascadesToClass, __method__, includes_and_extends, runtime_includes_and_extends_block )
130
119
  end
131
120
 
132
121
  ##################################################
@@ -134,9 +123,9 @@ module ModuleCluster::Define::ClusterCascadesToClass
134
123
  ##################################################
135
124
 
136
125
  def include_or_extend_cascades_includes_to_class( *includes, & runtime_includes_block )
137
- include_cascades_includes_to_class( *includes, & runtime_includes_block )
138
- extend_cascades_includes_to_class( *includes, & runtime_includes_block )
139
- return self
126
+ include_set = include_cascades_includes_to_class( *includes, & runtime_includes_block )
127
+ extend_set = extend_cascades_includes_to_class( *includes, & runtime_includes_block )
128
+ return ModuleCluster::ClusterStack::Set::MultiSetProxy.new( include_set, extend_set )
140
129
  end
141
130
 
142
131
  #################################################
@@ -144,9 +133,9 @@ module ModuleCluster::Define::ClusterCascadesToClass
144
133
  #################################################
145
134
 
146
135
  def include_or_extend_cascades_extends_to_class( *extends, & runtime_extends_block )
147
- include_cascades_extends_to_class( *extends, & runtime_extends_block )
148
- extend_cascades_extends_to_class( *extends, & runtime_extends_block )
149
- return self
136
+ include_set = include_cascades_extends_to_class( *extends, & runtime_extends_block )
137
+ extend_set = extend_cascades_extends_to_class( *extends, & runtime_extends_block )
138
+ return ModuleCluster::ClusterStack::Set::MultiSetProxy.new( include_set, extend_set )
150
139
  end
151
140
 
152
141
  ##############################################################
@@ -154,39 +143,39 @@ module ModuleCluster::Define::ClusterCascadesToClass
154
143
  ##############################################################
155
144
 
156
145
  def include_or_extend_cascades_includes_and_extends_to_class( *includes_and_extends, & runtime_includes_and_extends_block )
157
- include_cascades_to_class_prepending_includes_and_extends( *includes_and_extends, & runtime_includes_and_extends_block )
158
- extend_cascades_to_class_prepending_includes_and_extends( *includes_and_extends, & runtime_includes_and_extends_block )
159
- return self
146
+ include_set = include_cascades_to_class_prepend_includes_and_extends( *includes_and_extends, & runtime_includes_and_extends_block )
147
+ extend_set = extend_cascades_to_class_prepend_includes_and_extends( *includes_and_extends, & runtime_includes_and_extends_block )
148
+ return ModuleCluster::ClusterStack::Set::MultiSetProxy.new( include_set, extend_set )
160
149
  end
161
150
 
162
151
  #############################################################
163
- # include_or_extend_cascades_to_class_prepending_includes #
152
+ # include_or_extend_cascades_to_class_prepend_includes #
164
153
  #############################################################
165
154
 
166
- def include_or_extend_cascades_to_class_prepending_includes( *includes, & runtime_includes_block )
167
- include_cascades_to_class_prepending_includes( *includes, & runtime_includes_block )
168
- extend_cascades_to_class_prepending_includes( *includes, & runtime_includes_block )
169
- return self
155
+ def include_or_extend_cascades_to_class_prepend_includes( *includes, & runtime_includes_block )
156
+ include_set = include_cascades_to_class_prepend_includes( *includes, & runtime_includes_block )
157
+ extend_set = extend_cascades_to_class_prepend_includes( *includes, & runtime_includes_block )
158
+ return ModuleCluster::ClusterStack::Set::MultiSetProxy.new( include_set, extend_set )
170
159
  end
171
160
 
172
161
  ############################################################
173
- # include_or_extend_cascades_to_class_prepending_extends #
162
+ # include_or_extend_cascades_to_class_prepend_extends #
174
163
  ############################################################
175
164
 
176
- def include_or_extend_cascades_to_class_prepending_extends( *extends, & runtime_extends_block )
177
- include_cascades_to_class_prepending_includes( *extends, & runtime_extends_block )
178
- extend_cascades_to_class_prepending_includes( *extends, & runtime_extends_block )
179
- return self
165
+ def include_or_extend_cascades_to_class_prepend_extends( *extends, & runtime_extends_block )
166
+ include_set = include_cascades_to_class_prepend_includes( *extends, & runtime_extends_block )
167
+ extend_set = extend_cascades_to_class_prepend_includes( *extends, & runtime_extends_block )
168
+ return ModuleCluster::ClusterStack::Set::MultiSetProxy.new( include_set, extend_set )
180
169
  end
181
170
 
182
171
  #########################################################################
183
- # include_or_extend_cascades_to_class_prepending_includes_and_extends #
172
+ # include_or_extend_cascades_to_class_prepend_includes_and_extends #
184
173
  #########################################################################
185
174
 
186
- def include_or_extend_cascades_to_class_prepending_includes_and_extends( *includes_and_extends, & runtime_includes_and_extends_block )
187
- include_cascades_to_class_prepending_includes_and_extends( *includes_and_extends, & runtime_includes_and_extends_block )
188
- extend_cascades_to_class_prepending_includes_and_extends( *includes_and_extends, & runtime_includes_and_extends_block )
189
- return self
175
+ def include_or_extend_cascades_to_class_prepend_includes_and_extends( *includes_and_extends, & runtime_includes_and_extends_block )
176
+ include_set = include_cascades_to_class_prepend_includes_and_extends( *includes_and_extends, & runtime_includes_and_extends_block )
177
+ extend_set = extend_cascades_to_class_prepend_includes_and_extends( *includes_and_extends, & runtime_includes_and_extends_block )
178
+ return ModuleCluster::ClusterStack::Set::MultiSetProxy.new( include_set, extend_set )
190
179
  end
191
180
 
192
181
  end
@@ -2,6 +2,7 @@
2
2
  module ModuleCluster::Define::ClusterCascadesToModule
3
3
 
4
4
  include ModuleCluster::CascadeFeatures::ClusterStack
5
+ include ModuleCluster::Suspend::WithoutHooks
5
6
 
6
7
  extend ModuleCluster::ExtendForCascade
7
8
 
@@ -26,8 +27,7 @@ module ModuleCluster::Define::ClusterCascadesToModule
26
27
  #########################################
27
28
 
28
29
  def include_cascades_includes_to_module( *includes, & runtime_includes_block )
29
- cluster_stack.include_includes( ModuleCluster::Define::ClusterCascadesToModule, __method__, includes, runtime_includes_block )
30
- return self
30
+ return cluster_stack.include_includes( ModuleCluster::Define::ClusterCascadesToModule, __method__, includes, runtime_includes_block )
31
31
  end
32
32
 
33
33
  ########################################
@@ -35,8 +35,7 @@ module ModuleCluster::Define::ClusterCascadesToModule
35
35
  ########################################
36
36
 
37
37
  def include_cascades_extends_to_module( *extends, & runtime_extends_block )
38
- cluster_stack.include_extends( ModuleCluster::Define::ClusterCascadesToModule, __method__, extends, runtime_extends_block )
39
- return self
38
+ return cluster_stack.include_extends( ModuleCluster::Define::ClusterCascadesToModule, __method__, extends, runtime_extends_block )
40
39
  end
41
40
 
42
41
  #####################################################
@@ -44,8 +43,7 @@ module ModuleCluster::Define::ClusterCascadesToModule
44
43
  #####################################################
45
44
 
46
45
  def include_cascades_includes_and_extends_to_module( *includes_and_extends, & runtime_includes_and_extends_block )
47
- cluster_stack.include_prepends_includes_and_extends( ModuleCluster::Define::ClusterCascadesToModule, __method__, includes_and_extends, runtime_includes_and_extends_block )
48
- return self
46
+ return cluster_stack.include_prepends_includes_and_extends( ModuleCluster::Define::ClusterCascadesToModule, __method__, includes_and_extends, runtime_includes_and_extends_block )
49
47
  end
50
48
 
51
49
  ########################################
@@ -53,8 +51,7 @@ module ModuleCluster::Define::ClusterCascadesToModule
53
51
  ########################################
54
52
 
55
53
  def extend_cascades_includes_to_module( *includes, & runtime_includes_block )
56
- cluster_stack.extend_includes( ModuleCluster::Define::ClusterCascadesToModule, __method__, includes, runtime_includes_block )
57
- return self
54
+ return cluster_stack.extend_includes( ModuleCluster::Define::ClusterCascadesToModule, __method__, includes, runtime_includes_block )
58
55
  end
59
56
 
60
57
  #######################################
@@ -62,8 +59,7 @@ module ModuleCluster::Define::ClusterCascadesToModule
62
59
  #######################################
63
60
 
64
61
  def extend_cascades_extends_to_module( *extends, & runtime_extends_block )
65
- cluster_stack.extend_extends( ModuleCluster::Define::ClusterCascadesToModule, __method__, extends, runtime_extends_block )
66
- return self
62
+ return cluster_stack.extend_extends( ModuleCluster::Define::ClusterCascadesToModule, __method__, extends, runtime_extends_block )
67
63
  end
68
64
 
69
65
  ####################################################
@@ -71,62 +67,55 @@ module ModuleCluster::Define::ClusterCascadesToModule
71
67
  ####################################################
72
68
 
73
69
  def extend_cascades_includes_and_extends_to_module( *includes_and_extends, & runtime_includes_and_extends_block )
74
- cluster_stack.extend_prepends_includes_and_extends( ModuleCluster::Define::ClusterCascadesToModule, __method__, includes_and_extends, runtime_includes_and_extends_block )
75
- return self
70
+ return cluster_stack.extend_prepends_includes_and_extends( ModuleCluster::Define::ClusterCascadesToModule, __method__, includes_and_extends, runtime_includes_and_extends_block )
76
71
  end
77
72
 
78
73
  ####################################################
79
- # include_cascades_to_module_prepending_includes #
74
+ # include_cascades_to_module_prepend_includes #
80
75
  ####################################################
81
76
 
82
- def include_cascades_to_module_prepending_includes( *includes, & runtime_includes_block )
83
- cluster_stack.include_prepends_includes( ModuleCluster::Define::ClusterCascadesToModule, __method__, includes, runtime_includes_block )
84
- return self
77
+ def include_cascades_to_module_prepend_includes( *includes, & runtime_includes_block )
78
+ return cluster_stack.include_prepends_includes( ModuleCluster::Define::ClusterCascadesToModule, __method__, includes, runtime_includes_block )
85
79
  end
86
80
 
87
81
  ###################################################
88
- # include_cascades_to_module_prepending_extends #
82
+ # include_cascades_to_module_prepend_extends #
89
83
  ###################################################
90
84
 
91
- def include_cascades_to_module_prepending_extends( *extends, & runtime_extends_block )
92
- cluster_stack.include_prepends_extends( ModuleCluster::Define::ClusterCascadesToModule, __method__, extends, runtime_extends_block )
93
- return self
85
+ def include_cascades_to_module_prepend_extends( *extends, & runtime_extends_block )
86
+ return cluster_stack.include_prepends_extends( ModuleCluster::Define::ClusterCascadesToModule, __method__, extends, runtime_extends_block )
94
87
  end
95
88
 
96
89
  ################################################################
97
- # include_cascades_to_module_prepending_includes_and_extends #
90
+ # include_cascades_to_module_prepend_includes_and_extends #
98
91
  ################################################################
99
92
 
100
- def include_cascades_to_module_prepending_includes_and_extends( *includes_and_extends, & runtime_includes_and_extends_block )
101
- cluster_stack.include_prepends_includes_and_extends( ModuleCluster::Define::ClusterCascadesToModule, __method__, includes_and_extends, runtime_includes_and_extends_block )
102
- return self
93
+ def include_cascades_to_module_prepend_includes_and_extends( *includes_and_extends, & runtime_includes_and_extends_block )
94
+ return cluster_stack.include_prepends_includes_and_extends( ModuleCluster::Define::ClusterCascadesToModule, __method__, includes_and_extends, runtime_includes_and_extends_block )
103
95
  end
104
96
 
105
97
  ###################################################
106
- # extend_cascades_to_module_prepending_includes #
98
+ # extend_cascades_to_module_prepend_includes #
107
99
  ###################################################
108
100
 
109
- def extend_cascades_to_module_prepending_includes( *includes, & runtime_includes_block )
110
- cluster_stack.extend_prepends_includes( ModuleCluster::Define::ClusterCascadesToModule, __method__, includes, runtime_includes_block )
111
- return self
101
+ def extend_cascades_to_module_prepend_includes( *includes, & runtime_includes_block )
102
+ return cluster_stack.extend_prepends_includes( ModuleCluster::Define::ClusterCascadesToModule, __method__, includes, runtime_includes_block )
112
103
  end
113
104
 
114
105
  ##################################################
115
- # extend_cascades_to_module_prepending_extends #
106
+ # extend_cascades_to_module_prepend_extends #
116
107
  ##################################################
117
108
 
118
- def extend_cascades_to_module_prepending_extends( *extends, & runtime_extends_block )
119
- cluster_stack.extend_prepends_extends( ModuleCluster::Define::ClusterCascadesToModule, __method__, extends, runtime_extends_block )
120
- return self
109
+ def extend_cascades_to_module_prepend_extends( *extends, & runtime_extends_block )
110
+ return cluster_stack.extend_prepends_extends( ModuleCluster::Define::ClusterCascadesToModule, __method__, extends, runtime_extends_block )
121
111
  end
122
112
 
123
113
  ###############################################################
124
- # extend_cascades_to_module_prepending_includes_and_extends #
114
+ # extend_cascades_to_module_prepend_includes_and_extends #
125
115
  ###############################################################
126
116
 
127
- def extend_cascades_to_module_prepending_includes_and_extends( *includes_and_extends, & runtime_includes_and_extends_block )
128
- cluster_stack.extend_prepends_includes_and_extends( ModuleCluster::Define::ClusterCascadesToModule, __method__, includes_and_extends, runtime_includes_and_extends_block )
129
- return self
117
+ def extend_cascades_to_module_prepend_includes_and_extends( *includes_and_extends, & runtime_includes_and_extends_block )
118
+ return cluster_stack.extend_prepends_includes_and_extends( ModuleCluster::Define::ClusterCascadesToModule, __method__, includes_and_extends, runtime_includes_and_extends_block )
130
119
  end
131
120
 
132
121
  ###################################################
@@ -134,9 +123,9 @@ module ModuleCluster::Define::ClusterCascadesToModule
134
123
  ###################################################
135
124
 
136
125
  def include_or_extend_cascades_includes_to_module( *includes, & runtime_includes_block )
137
- include_cascades_includes_to_module( *includes, & runtime_includes_block )
138
- extend_cascades_includes_to_module( *includes, & runtime_includes_block )
139
- return self
126
+ include_set = include_cascades_includes_to_module( *includes, & runtime_includes_block )
127
+ extend_set = extend_cascades_includes_to_module( *includes, & runtime_includes_block )
128
+ return ModuleCluster::ClusterStack::Set::MultiSetProxy.new( include_set, extend_set )
140
129
  end
141
130
 
142
131
  ##################################################
@@ -144,9 +133,9 @@ module ModuleCluster::Define::ClusterCascadesToModule
144
133
  ##################################################
145
134
 
146
135
  def include_or_extend_cascades_extends_to_module( *extends, & runtime_extends_block )
147
- include_cascades_extends_to_module( *extends, & runtime_extends_block )
148
- extend_cascades_extends_to_module( *extends, & runtime_extends_block )
149
- return self
136
+ include_set = include_cascades_extends_to_module( *extends, & runtime_extends_block )
137
+ extend_set = extend_cascades_extends_to_module( *extends, & runtime_extends_block )
138
+ return ModuleCluster::ClusterStack::Set::MultiSetProxy.new( include_set, extend_set )
150
139
  end
151
140
 
152
141
  ###############################################################
@@ -154,39 +143,39 @@ module ModuleCluster::Define::ClusterCascadesToModule
154
143
  ###############################################################
155
144
 
156
145
  def include_or_extend_cascades_includes_and_extends_to_module( *includes_and_extends, & runtime_includes_and_extends_block )
157
- include_cascades_includes_and_extends_to_module( *includes_and_extends, & runtime_includes_and_extends_block )
158
- extend_cascades_includes_and_extends_to_module( *includes_and_extends, & runtime_includes_and_extends_block )
159
- return self
146
+ include_set = include_cascades_includes_and_extends_to_module( *includes_and_extends, & runtime_includes_and_extends_block )
147
+ extend_set = extend_cascades_includes_and_extends_to_module( *includes_and_extends, & runtime_includes_and_extends_block )
148
+ return ModuleCluster::ClusterStack::Set::MultiSetProxy.new( include_set, extend_set )
160
149
  end
161
150
 
162
151
  ##############################################################
163
- # include_or_extend_cascades_to_module_prepending_includes #
152
+ # include_or_extend_cascades_to_module_prepend_includes #
164
153
  ##############################################################
165
154
 
166
- def include_or_extend_cascades_to_module_prepending_includes( *includes, & runtime_includes_block )
167
- include_cascades_to_module_prepending_includes( *includes, & runtime_includes_block )
168
- extend_cascades_to_module_prepending_includes( *includes, & runtime_includes_block )
169
- return self
155
+ def include_or_extend_cascades_to_module_prepend_includes( *includes, & runtime_includes_block )
156
+ include_set = include_cascades_to_module_prepend_includes( *includes, & runtime_includes_block )
157
+ extend_set = extend_cascades_to_module_prepend_includes( *includes, & runtime_includes_block )
158
+ return ModuleCluster::ClusterStack::Set::MultiSetProxy.new( include_set, extend_set )
170
159
  end
171
160
 
172
161
  #############################################################
173
- # include_or_extend_cascades_to_module_prepending_extends #
162
+ # include_or_extend_cascades_to_module_prepend_extends #
174
163
  #############################################################
175
164
 
176
- def include_or_extend_cascades_to_module_prepending_extends( *extends, & runtime_extends_block )
177
- include_cascades_to_module_prepending_extends( *extends, & runtime_extends_block )
178
- extend_cascades_to_module_prepending_extends( *extends, & runtime_extends_block )
179
- return self
165
+ def include_or_extend_cascades_to_module_prepend_extends( *extends, & runtime_extends_block )
166
+ include_set = include_cascades_to_module_prepend_extends( *extends, & runtime_extends_block )
167
+ extend_set = extend_cascades_to_module_prepend_extends( *extends, & runtime_extends_block )
168
+ return ModuleCluster::ClusterStack::Set::MultiSetProxy.new( include_set, extend_set )
180
169
  end
181
170
 
182
171
  ##########################################################################
183
- # include_or_extend_cascades_to_module_prepending_includes_and_extends #
172
+ # include_or_extend_cascades_to_module_prepend_includes_and_extends #
184
173
  ##########################################################################
185
174
 
186
- def include_or_extend_cascades_to_module_prepending_includes_and_extends( *includes_and_extends, & runtime_includes_and_extends_block )
187
- include_cascades_to_module_prepending_includes_and_extends( *includes_and_extends, & runtime_includes_and_extends_block )
188
- extend_cascades_to_module_prepending_includes_and_extends( *includes_and_extends, & runtime_includes_and_extends_block )
189
- return self
175
+ def include_or_extend_cascades_to_module_prepend_includes_and_extends( *includes_and_extends, & runtime_includes_and_extends_block )
176
+ include_set = include_cascades_to_module_prepend_includes_and_extends( *includes_and_extends, & runtime_includes_and_extends_block )
177
+ extend_set = extend_cascades_to_module_prepend_includes_and_extends( *includes_and_extends, & runtime_includes_and_extends_block )
178
+ return ModuleCluster::ClusterStack::Set::MultiSetProxy.new( include_set, extend_set )
190
179
  end
191
180
 
192
181
  end
@@ -2,6 +2,7 @@
2
2
  module ModuleCluster::Define::InstanceCluster
3
3
 
4
4
  include ModuleCluster::CascadeFeatures::ClusterStack
5
+ include ModuleCluster::Suspend::WithoutHooks
5
6
 
6
7
  extend ModuleCluster::ExtendForCascade
7
8
 
@@ -30,8 +31,7 @@ module ModuleCluster::Define::InstanceCluster
30
31
  ##################################
31
32
 
32
33
  def instance_extend_also_extends( *extends, & runtime_extends_block )
33
- cluster_stack.instance_extend_extends( ModuleCluster::Define::Cluster, __method__, extends, runtime_extends_block )
34
- return self
34
+ return cluster_stack.instance_extend_extends( ModuleCluster::Define::Cluster, __method__, extends, runtime_extends_block )
35
35
  end
36
36
 
37
37
  ######################################
@@ -39,8 +39,7 @@ module ModuleCluster::Define::InstanceCluster
39
39
  ######################################
40
40
 
41
41
  def instance_extend_prepends_extends( *extends, & runtime_extends_block )
42
- cluster_stack.instance_extend_prepends_extends( ModuleCluster::Define::Cluster, __method__, extends, runtime_extends_block )
43
- return self
42
+ return cluster_stack.instance_extend_prepends_extends( ModuleCluster::Define::Cluster, __method__, extends, runtime_extends_block )
44
43
  end
45
44
 
46
45
  end