module-cluster 1.4.8 → 2.0.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (108) hide show
  1. data/README.md +127 -337
  2. data/lib/module-cluster.rb +1 -153
  3. data/lib/module/cluster.rb +341 -0
  4. data/lib/module/cluster/class_support.rb +22 -0
  5. data/lib/module/cluster/cluster.rb +10 -0
  6. data/lib/module/cluster/cluster/cluster_interface.rb +550 -0
  7. data/lib/module/cluster/exception/module_not_in_stack.rb +26 -0
  8. data/lib/module/cluster/instance_controller.rb +14 -0
  9. data/lib/module/cluster/instance_controller/hook_controller.rb +33 -0
  10. data/lib/module/cluster/instance_controller/hook_controller/chain_proxy.rb +511 -0
  11. data/lib/module/cluster/instance_controller/hook_controller/hook_controller_interface.rb +830 -0
  12. data/lib/module/cluster/instance_controller/instance_controller_interface.rb +269 -0
  13. data/lib/module/cluster/instance_controller/multiple_hook_controller_proxy.rb +359 -0
  14. data/lib/module/cluster/instance_controller/multiple_hook_controller_proxy/chain_proxy.rb +442 -0
  15. data/lib/module/cluster/module_support.rb +67 -0
  16. data/lib/module/namespaces.rb +13 -0
  17. data/lib/module/requires.rb +32 -0
  18. data/spec/module/cluster/cluster_spec.rb +473 -0
  19. data/spec/module/cluster/instance_controller/hook_controller_spec.rb +922 -0
  20. data/spec/module/cluster/instance_controller/multiple_hook_controller_proxy_spec.rb +1240 -0
  21. data/spec/module/cluster_spec.rb +1794 -0
  22. metadata +27 -98
  23. data/README.rdoc +0 -395
  24. data/lib/module-cluster/ModuleCluster.rb +0 -9
  25. data/lib/module-cluster/ModuleCluster/Define.rb +0 -12
  26. data/lib/module-cluster/ModuleCluster/Define/Block.rb +0 -9
  27. data/lib/module-cluster/ModuleCluster/Define/Block/CascadingClass.rb +0 -83
  28. data/lib/module-cluster/ModuleCluster/Define/Block/CascadingClassOrModule.rb +0 -70
  29. data/lib/module-cluster/ModuleCluster/Define/Block/CascadingModule.rb +0 -79
  30. data/lib/module-cluster/ModuleCluster/Define/Block/CascadingModuleOrSubclass.rb +0 -21
  31. data/lib/module-cluster/ModuleCluster/Define/Block/Class.rb +0 -77
  32. data/lib/module-cluster/ModuleCluster/Define/Block/ClassOrInstance.rb +0 -78
  33. data/lib/module-cluster/ModuleCluster/Define/Block/ClassOrModule.rb +0 -78
  34. data/lib/module-cluster/ModuleCluster/Define/Block/ClassOrModuleOrInstance.rb +0 -78
  35. data/lib/module-cluster/ModuleCluster/Define/Block/ClassOrModuleOrSubclass.rb +0 -36
  36. data/lib/module-cluster/ModuleCluster/Define/Block/ClassOrSubclass.rb +0 -29
  37. data/lib/module-cluster/ModuleCluster/Define/Block/Instance.rb +0 -45
  38. data/lib/module-cluster/ModuleCluster/Define/Block/Module.rb +0 -77
  39. data/lib/module-cluster/ModuleCluster/Define/Block/ModuleOrInstance.rb +0 -78
  40. data/lib/module-cluster/ModuleCluster/Define/Block/ModuleOrSubclass.rb +0 -29
  41. data/lib/module-cluster/ModuleCluster/Define/Block/Subclass.rb +0 -56
  42. data/lib/module-cluster/ModuleCluster/Define/ClassCluster.rb +0 -193
  43. data/lib/module-cluster/ModuleCluster/Define/ClassOrInstanceCluster.rb +0 -128
  44. data/lib/module-cluster/ModuleCluster/Define/Cluster.rb +0 -181
  45. data/lib/module-cluster/ModuleCluster/Define/ClusterCascades.rb +0 -185
  46. data/lib/module-cluster/ModuleCluster/Define/ClusterCascadesToClass.rb +0 -181
  47. data/lib/module-cluster/ModuleCluster/Define/ClusterCascadesToModule.rb +0 -181
  48. data/lib/module-cluster/ModuleCluster/Define/Deprecated.rb +0 -40
  49. data/lib/module-cluster/ModuleCluster/Define/InstanceCluster.rb +0 -45
  50. data/lib/module-cluster/ModuleCluster/Define/ModuleCluster.rb +0 -193
  51. data/lib/module-cluster/ModuleCluster/Define/ModuleOrClassCluster.rb +0 -209
  52. data/lib/module-cluster/ModuleCluster/Define/ModuleOrInstanceCluster.rb +0 -128
  53. data/lib/module-cluster/ModuleCluster/Define/Status.rb +0 -106
  54. data/lib/module-cluster/ModuleCluster/Suspend.rb +0 -7
  55. data/lib/module-cluster/ModuleCluster/Suspend/Hooks.rb +0 -315
  56. data/lib/module-cluster/ModuleCluster/Suspend/WithoutHooks.rb +0 -153
  57. data/lib/module-cluster/_private_/ModuleCluster/CascadeFeatures.rb +0 -77
  58. data/lib/module-cluster/_private_/ModuleCluster/CascadeFeatures/ClusterStack.rb +0 -44
  59. data/lib/module-cluster/_private_/ModuleCluster/CascadeFeatures/PerformCascades.rb +0 -292
  60. data/lib/module-cluster/_private_/ModuleCluster/CascadeFeatures/Subclass.rb +0 -24
  61. data/lib/module-cluster/_private_/ModuleCluster/ClusterStack.rb +0 -12
  62. data/lib/module-cluster/_private_/ModuleCluster/ClusterStack/Block.rb +0 -9
  63. data/lib/module-cluster/_private_/ModuleCluster/ClusterStack/Block/Class.rb +0 -36
  64. data/lib/module-cluster/_private_/ModuleCluster/ClusterStack/Block/Inherited.rb +0 -20
  65. data/lib/module-cluster/_private_/ModuleCluster/ClusterStack/Block/Instance.rb +0 -20
  66. data/lib/module-cluster/_private_/ModuleCluster/ClusterStack/Block/Module.rb +0 -36
  67. data/lib/module-cluster/_private_/ModuleCluster/ClusterStack/Block/Set.rb +0 -6
  68. data/lib/module-cluster/_private_/ModuleCluster/ClusterStack/Extends.rb +0 -140
  69. data/lib/module-cluster/_private_/ModuleCluster/ClusterStack/Includes.rb +0 -110
  70. data/lib/module-cluster/_private_/ModuleCluster/ClusterStack/PrependsExtends.rb +0 -140
  71. data/lib/module-cluster/_private_/ModuleCluster/ClusterStack/PrependsIncludes.rb +0 -110
  72. data/lib/module-cluster/_private_/ModuleCluster/ClusterStack/Set.rb +0 -35
  73. data/lib/module-cluster/_private_/ModuleCluster/ClusterStack/Set/MultiSetProxy.rb +0 -359
  74. data/lib/module-cluster/_private_/ModuleCluster/ClusterStack/Status.rb +0 -55
  75. data/lib/module-cluster/_private_/ModuleCluster/ClusterStack/Suspend.rb +0 -199
  76. data/lib/module-cluster/_private_/ModuleCluster/ExtendForCascade.rb +0 -34
  77. data/spec/ModuleCluster/Define/Block/CascadingClassOrModule_spec.rb +0 -285
  78. data/spec/ModuleCluster/Define/Block/CascadingClass_spec.rb +0 -254
  79. data/spec/ModuleCluster/Define/Block/CascadingModuleOrSubclass_spec.rb +0 -56
  80. data/spec/ModuleCluster/Define/Block/CascadingModule_spec.rb +0 -278
  81. data/spec/ModuleCluster/Define/Block/ClassOrInstance_spec.rb +0 -230
  82. data/spec/ModuleCluster/Define/Block/ClassOrModuleOrInstance_spec.rb +0 -238
  83. data/spec/ModuleCluster/Define/Block/ClassOrModuleOrSubclass_spec.rb +0 -54
  84. data/spec/ModuleCluster/Define/Block/ClassOrModule_spec.rb +0 -231
  85. data/spec/ModuleCluster/Define/Block/ClassOrSubclass_spec.rb +0 -54
  86. data/spec/ModuleCluster/Define/Block/Class_spec.rb +0 -224
  87. data/spec/ModuleCluster/Define/Block/Instance_spec.rb +0 -78
  88. data/spec/ModuleCluster/Define/Block/ModuleOrInstance_spec.rb +0 -54
  89. data/spec/ModuleCluster/Define/Block/ModuleOrSubclass_spec.rb +0 -51
  90. data/spec/ModuleCluster/Define/Block/Module_spec.rb +0 -230
  91. data/spec/ModuleCluster/Define/Block/Subclass_spec.rb +0 -73
  92. data/spec/ModuleCluster/Define/Block_spec.rb +0 -18
  93. data/spec/ModuleCluster/Define/ClassCluster_spec.rb +0 -728
  94. data/spec/ModuleCluster/Define/ClassOrInstanceCluster_spec.rb +0 -576
  95. data/spec/ModuleCluster/Define/ClusterCascadesToClass_spec.rb +0 -659
  96. data/spec/ModuleCluster/Define/ClusterCascadesToModule_spec.rb +0 -678
  97. data/spec/ModuleCluster/Define/ClusterCascades_spec.rb +0 -644
  98. data/spec/ModuleCluster/Define/Cluster_spec.rb +0 -708
  99. data/spec/ModuleCluster/Define/InstanceCluster_spec.rb +0 -102
  100. data/spec/ModuleCluster/Define/ModuleCluster_spec.rb +0 -728
  101. data/spec/ModuleCluster/Define/ModuleOrClassCluster_spec.rb +0 -728
  102. data/spec/ModuleCluster/Define/ModuleOrInstanceCluster_spec.rb +0 -576
  103. data/spec/ModuleCluster/Suspend/Hooks_spec.rb +0 -573
  104. data/spec/ModuleCluster/Suspend/WithoutHooks_spec.rb +0 -559
  105. data/spec/ModuleCluster_spec.rb +0 -15
  106. data/spec/_private_/ModuleCluster/CascadeFeatures/PerformCascades_spec.rb +0 -386
  107. data/spec/_private_/ModuleCluster/ClusterStack/Set/MultiSetProxy_spec.rb +0 -419
  108. data/spec/_private_/ModuleCluster/ClusterStack/Suspend_spec.rb +0 -242
@@ -1,185 +0,0 @@
1
-
2
- module ::ModuleCluster::Define::ClusterCascades
3
-
4
- include ::ModuleCluster::CascadeFeatures::ClusterStack
5
- include ::ModuleCluster::Suspend::WithoutHooks
6
-
7
- extend ::ModuleCluster::ExtendForCascade
8
-
9
- ####################################
10
- # self.should_include_or_extend? #
11
- ####################################
12
-
13
- def self.should_include_or_extend?( hooked_instance )
14
- return true
15
- end
16
-
17
- ##########################
18
- # self.should_cascade? #
19
- ##########################
20
-
21
- def self.should_cascade?( hooked_instance )
22
- return true
23
- end
24
-
25
- ###############################
26
- # include_cascades_includes #
27
- ###############################
28
-
29
- def include_cascades_includes( *includes, & runtime_includes_block )
30
- return cluster_stack.include_includes( ::ModuleCluster::Define::ClusterCascades, __method__, includes, runtime_includes_block )
31
- end
32
-
33
- ##############################
34
- # include_cascades_extends #
35
- ##############################
36
-
37
- def include_cascades_extends( *extends, & runtime_extends_block )
38
- return cluster_stack.include_extends( ::ModuleCluster::Define::ClusterCascades, __method__, extends, runtime_extends_block )
39
- end
40
-
41
- ###########################################
42
- # include_cascades_includes_and_extends #
43
- ###########################################
44
-
45
- def include_cascades_includes_and_extends( *includes_and_extends, & runtime_includes_and_extends_block )
46
- return cluster_stack.include_includes_and_extends( ::ModuleCluster::Define::ClusterCascades, __method__, includes_and_extends, runtime_includes_and_extends_block )
47
- end
48
-
49
- ##############################
50
- # extend_cascades_includes #
51
- ##############################
52
-
53
- def extend_cascades_includes( *includes, & runtime_includes_block )
54
- return cluster_stack.extend_includes( ::ModuleCluster::Define::ClusterCascades, __method__, includes, runtime_includes_block )
55
- end
56
-
57
- #############################
58
- # extend_cascades_extends #
59
- #############################
60
-
61
- def extend_cascades_extends( *extends, & runtime_extends_block )
62
- return cluster_stack.extend_extends( ::ModuleCluster::Define::ClusterCascades, __method__, extends, runtime_extends_block )
63
- end
64
-
65
- ##########################################
66
- # extend_cascades_includes_and_extends #
67
- ##########################################
68
-
69
- def extend_cascades_includes_and_extends( *includes_and_extends, & runtime_includes_and_extends_block )
70
- return cluster_stack.extend_includes_and_extends( ::ModuleCluster::Define::ClusterCascades, __method__, includes_and_extends, runtime_includes_and_extends_block )
71
- end
72
-
73
- ##########################################
74
- # include_cascades_prepend_includes #
75
- ##########################################
76
-
77
- def include_cascades_prepend_includes( *includes, & runtime_includes_block )
78
- return cluster_stack.include_prepends_includes( ::ModuleCluster::Define::ClusterCascades, __method__, includes, runtime_includes_block )
79
- end
80
-
81
- #########################################
82
- # include_cascades_prepend_extends #
83
- #########################################
84
-
85
- def include_cascades_prepend_extends( *extends, & runtime_extends_block )
86
- return cluster_stack.include_prepends_extends( ::ModuleCluster::Define::ClusterCascades, __method__, extends, runtime_extends_block )
87
- end
88
-
89
- ######################################################
90
- # include_cascades_prepend_includes_and_extends #
91
- ######################################################
92
-
93
- def include_cascades_prepend_includes_and_extends( *includes_and_extends, & runtime_includes_and_extends_block )
94
- include_set = include_cascades_prepend_includes( *includes_and_extends, & runtime_includes_and_extends_block )
95
- extend_set = include_cascades_prepend_extends( *includes_and_extends, & runtime_includes_and_extends_block )
96
- return ::ModuleCluster::ClusterStack::Set::MultiSetProxy.new( include_set, extend_set )
97
- end
98
-
99
- #########################################
100
- # extend_cascades_prepend_includes #
101
- #########################################
102
-
103
- def extend_cascades_prepend_includes( *includes, & runtime_includes_block )
104
- return cluster_stack.extend_prepends_includes( ::ModuleCluster::Define::ClusterCascades, __method__, includes, runtime_includes_block )
105
- end
106
-
107
- ########################################
108
- # extend_cascades_prepend_extends #
109
- ########################################
110
-
111
- def extend_cascades_prepend_extends( *extends, & runtime_extends_block )
112
- return cluster_stack.extend_prepends_extends( ::ModuleCluster::Define::ClusterCascades, __method__, extends, runtime_extends_block )
113
- end
114
-
115
- #####################################################
116
- # extend_cascades_prepend_includes_and_extends #
117
- #####################################################
118
-
119
- def extend_cascades_prepend_includes_and_extends( *includes_and_extends, & runtime_includes_and_extends_block )
120
- include_set = extend_cascades_prepend_includes( *includes_and_extends, & runtime_includes_and_extends_block )
121
- extend_set = extend_cascades_prepend_extends( *includes_and_extends, & runtime_includes_and_extends_block )
122
- return ::ModuleCluster::ClusterStack::Set::MultiSetProxy.new( include_set, extend_set )
123
- end
124
-
125
- #########################################
126
- # include_or_extend_cascades_includes #
127
- #########################################
128
-
129
- def include_or_extend_cascades_includes( *includes, & runtime_includes_block )
130
- include_set = include_cascades_includes( *includes, & runtime_includes_block )
131
- extend_set = extend_cascades_includes( *includes, & runtime_includes_block )
132
- return ::ModuleCluster::ClusterStack::Set::MultiSetProxy.new( include_set, extend_set )
133
- end
134
-
135
- ########################################
136
- # include_or_extend_cascades_extends #
137
- ########################################
138
-
139
- def include_or_extend_cascades_extends( *extends, & runtime_extends_block )
140
- include_set = include_cascades_extends( *extends, & runtime_extends_block )
141
- extend_set = extend_cascades_extends( *extends, & runtime_extends_block )
142
- return ::ModuleCluster::ClusterStack::Set::MultiSetProxy.new( include_set, extend_set )
143
- end
144
-
145
- #####################################################
146
- # include_or_extend_cascades_includes_and_extends #
147
- #####################################################
148
-
149
- def include_or_extend_cascades_includes_and_extends( *includes_and_extends, & runtime_includes_and_extends_block )
150
- include_set = include_cascades_includes_and_extends( *includes_and_extends, & runtime_includes_and_extends_block )
151
- extend_set = extend_cascades_includes_and_extends( *includes_and_extends, & runtime_includes_and_extends_block )
152
- return ::ModuleCluster::ClusterStack::Set::MultiSetProxy.new( include_set, extend_set )
153
- end
154
-
155
- ####################################################
156
- # include_or_extend_cascades_prepend_includes #
157
- ####################################################
158
-
159
- def include_or_extend_cascades_prepend_includes( *includes, & runtime_includes_block )
160
- include_set = include_cascades_includes( *includes, & runtime_includes_block )
161
- extend_set = extend_cascades_includes( *includes, & runtime_includes_block )
162
- return ::ModuleCluster::ClusterStack::Set::MultiSetProxy.new( include_set, extend_set )
163
- end
164
-
165
- ###################################################
166
- # include_or_extend_cascades_prepend_extends #
167
- ###################################################
168
-
169
- def include_or_extend_cascades_prepend_extends( *extends, & runtime_extends_block )
170
- include_set = include_cascades_prepend_extends( *extends, & runtime_extends_block )
171
- extend_set = extend_cascades_prepend_extends( *extends, & runtime_extends_block )
172
- return ::ModuleCluster::ClusterStack::Set::MultiSetProxy.new( include_set, extend_set )
173
- end
174
-
175
- ################################################################
176
- # include_or_extend_cascades_prepend_includes_and_extends #
177
- ################################################################
178
-
179
- def include_or_extend_cascades_prepend_includes_and_extends( *includes_and_extends, & runtime_includes_and_extends_block )
180
- include_set = include_cascades_prepend_includes_and_extends( *includes_and_extends, & runtime_includes_and_extends_block )
181
- extend_set = extend_cascades_prepend_includes_and_extends( *includes_and_extends, & runtime_includes_and_extends_block )
182
- return ::ModuleCluster::ClusterStack::Set::MultiSetProxy.new( include_set, extend_set )
183
- end
184
-
185
- end
@@ -1,181 +0,0 @@
1
-
2
- module ::ModuleCluster::Define::ClusterCascadesToClass
3
-
4
- include ::ModuleCluster::CascadeFeatures::ClusterStack
5
- include ::ModuleCluster::Suspend::WithoutHooks
6
-
7
- extend ::ModuleCluster::ExtendForCascade
8
-
9
- ####################################
10
- # self.should_include_or_extend? #
11
- ####################################
12
-
13
- def self.should_include_or_extend?( hooked_instance )
14
- return hooked_instance.is_a?( Class )
15
- end
16
-
17
- ##########################
18
- # self.should_cascade? #
19
- ##########################
20
-
21
- def self.should_cascade?( hooked_instance )
22
- return hooked_instance.is_a?( Module ) && ! hooked_instance.is_a?( Class )
23
- end
24
-
25
- ########################################
26
- # include_cascades_includes_to_class #
27
- ########################################
28
-
29
- def include_cascades_includes_to_class( *includes, & runtime_includes_block )
30
- return cluster_stack.include_includes( ::ModuleCluster::Define::ClusterCascadesToClass, __method__, includes, runtime_includes_block )
31
- end
32
-
33
- #######################################
34
- # include_cascades_extends_to_class #
35
- #######################################
36
-
37
- def include_cascades_extends_to_class( *extends, & runtime_extends_block )
38
- return cluster_stack.include_extends( ::ModuleCluster::Define::ClusterCascadesToClass, __method__, extends, runtime_extends_block )
39
- end
40
-
41
- ####################################################
42
- # include_cascades_includes_and_extends_to_class #
43
- ####################################################
44
-
45
- def include_cascades_includes_and_extends_to_class( *includes_and_extends, & runtime_includes_and_extends_block )
46
- return cluster_stack.include_includes_and_extends( ::ModuleCluster::Define::ClusterCascadesToClass, __method__, includes_and_extends, runtime_includes_and_extends_block )
47
- end
48
-
49
- #######################################
50
- # extend_cascades_includes_to_class #
51
- #######################################
52
-
53
- def extend_cascades_includes_to_class( *includes, & runtime_includes_block )
54
- return cluster_stack.extend_includes( ::ModuleCluster::Define::ClusterCascadesToClass, __method__, includes, runtime_includes_block )
55
- end
56
-
57
- ######################################
58
- # extend_cascades_extends_to_class #
59
- ######################################
60
-
61
- def extend_cascades_extends_to_class( *extends, & runtime_extends_block )
62
- return cluster_stack.extend_extends( ::ModuleCluster::Define::ClusterCascadesToClass, __method__, extends, runtime_extends_block )
63
- end
64
-
65
- ###################################################
66
- # extend_cascades_includes_and_extends_to_class #
67
- ###################################################
68
-
69
- def extend_cascades_includes_and_extends_to_class( *includes_and_extends, & runtime_includes_and_extends_block )
70
- return cluster_stack.extend_includes_and_extends( ::ModuleCluster::Define::ClusterCascadesToClass, __method__, includes_and_extends, runtime_includes_and_extends_block )
71
- end
72
-
73
- ###################################################
74
- # include_cascades_to_class_prepend_includes #
75
- ###################################################
76
-
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 )
79
- end
80
-
81
- ##################################################
82
- # include_cascades_to_class_prepend_extends #
83
- ##################################################
84
-
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 )
87
- end
88
-
89
- ###############################################################
90
- # include_cascades_to_class_prepend_includes_and_extends #
91
- ###############################################################
92
-
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 )
95
- end
96
-
97
- ##################################################
98
- # extend_cascades_to_class_prepend_includes #
99
- ##################################################
100
-
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 )
103
- end
104
-
105
- #################################################
106
- # extend_cascades_to_class_prepend_extends #
107
- #################################################
108
-
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 )
111
- end
112
-
113
- ##############################################################
114
- # extend_cascades_to_class_prepend_includes_and_extends #
115
- ##############################################################
116
-
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 )
119
- end
120
-
121
- ##################################################
122
- # include_or_extend_cascades_includes_to_class #
123
- ##################################################
124
-
125
- def include_or_extend_cascades_includes_to_class( *includes, & runtime_includes_block )
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 )
129
- end
130
-
131
- #################################################
132
- # include_or_extend_cascades_extends_to_class #
133
- #################################################
134
-
135
- def include_or_extend_cascades_extends_to_class( *extends, & runtime_extends_block )
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 )
139
- end
140
-
141
- ##############################################################
142
- # include_or_extend_cascades_includes_and_extends_to_class #
143
- ##############################################################
144
-
145
- def include_or_extend_cascades_includes_and_extends_to_class( *includes_and_extends, & runtime_includes_and_extends_block )
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 )
149
- end
150
-
151
- #############################################################
152
- # include_or_extend_cascades_to_class_prepend_includes #
153
- #############################################################
154
-
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 )
159
- end
160
-
161
- ############################################################
162
- # include_or_extend_cascades_to_class_prepend_extends #
163
- ############################################################
164
-
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 )
169
- end
170
-
171
- #########################################################################
172
- # include_or_extend_cascades_to_class_prepend_includes_and_extends #
173
- #########################################################################
174
-
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 )
179
- end
180
-
181
- end
@@ -1,181 +0,0 @@
1
-
2
- module ::ModuleCluster::Define::ClusterCascadesToModule
3
-
4
- include ::ModuleCluster::CascadeFeatures::ClusterStack
5
- include ::ModuleCluster::Suspend::WithoutHooks
6
-
7
- extend ::ModuleCluster::ExtendForCascade
8
-
9
- ####################################
10
- # self.should_include_or_extend? #
11
- ####################################
12
-
13
- def self.should_include_or_extend?( hooked_instance )
14
- return hooked_instance.is_a?( Module ) && ! hooked_instance.is_a?( Class )
15
- end
16
-
17
- ##########################
18
- # self.should_cascade? #
19
- ##########################
20
-
21
- def self.should_cascade?( hooked_instance )
22
- return hooked_instance.is_a?( Module ) && ! hooked_instance.is_a?( Class )
23
- end
24
-
25
- #########################################
26
- # include_cascades_includes_to_module #
27
- #########################################
28
-
29
- def include_cascades_includes_to_module( *includes, & runtime_includes_block )
30
- return cluster_stack.include_includes( ::ModuleCluster::Define::ClusterCascadesToModule, __method__, includes, runtime_includes_block )
31
- end
32
-
33
- ########################################
34
- # include_cascades_extends_to_module #
35
- ########################################
36
-
37
- def include_cascades_extends_to_module( *extends, & runtime_extends_block )
38
- return cluster_stack.include_extends( ::ModuleCluster::Define::ClusterCascadesToModule, __method__, extends, runtime_extends_block )
39
- end
40
-
41
- #####################################################
42
- # include_cascades_includes_and_extends_to_module #
43
- #####################################################
44
-
45
- def include_cascades_includes_and_extends_to_module( *includes_and_extends, & runtime_includes_and_extends_block )
46
- return cluster_stack.include_prepends_includes_and_extends( ::ModuleCluster::Define::ClusterCascadesToModule, __method__, includes_and_extends, runtime_includes_and_extends_block )
47
- end
48
-
49
- ########################################
50
- # extend_cascades_includes_to_module #
51
- ########################################
52
-
53
- def extend_cascades_includes_to_module( *includes, & runtime_includes_block )
54
- return cluster_stack.extend_includes( ::ModuleCluster::Define::ClusterCascadesToModule, __method__, includes, runtime_includes_block )
55
- end
56
-
57
- #######################################
58
- # extend_cascades_extends_to_module #
59
- #######################################
60
-
61
- def extend_cascades_extends_to_module( *extends, & runtime_extends_block )
62
- return cluster_stack.extend_extends( ::ModuleCluster::Define::ClusterCascadesToModule, __method__, extends, runtime_extends_block )
63
- end
64
-
65
- ####################################################
66
- # extend_cascades_includes_and_extends_to_module #
67
- ####################################################
68
-
69
- def extend_cascades_includes_and_extends_to_module( *includes_and_extends, & runtime_includes_and_extends_block )
70
- return cluster_stack.extend_prepends_includes_and_extends( ::ModuleCluster::Define::ClusterCascadesToModule, __method__, includes_and_extends, runtime_includes_and_extends_block )
71
- end
72
-
73
- ####################################################
74
- # include_cascades_to_module_prepend_includes #
75
- ####################################################
76
-
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 )
79
- end
80
-
81
- ###################################################
82
- # include_cascades_to_module_prepend_extends #
83
- ###################################################
84
-
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 )
87
- end
88
-
89
- ################################################################
90
- # include_cascades_to_module_prepend_includes_and_extends #
91
- ################################################################
92
-
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 )
95
- end
96
-
97
- ###################################################
98
- # extend_cascades_to_module_prepend_includes #
99
- ###################################################
100
-
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 )
103
- end
104
-
105
- ##################################################
106
- # extend_cascades_to_module_prepend_extends #
107
- ##################################################
108
-
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 )
111
- end
112
-
113
- ###############################################################
114
- # extend_cascades_to_module_prepend_includes_and_extends #
115
- ###############################################################
116
-
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 )
119
- end
120
-
121
- ###################################################
122
- # include_or_extend_cascades_includes_to_module #
123
- ###################################################
124
-
125
- def include_or_extend_cascades_includes_to_module( *includes, & runtime_includes_block )
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 )
129
- end
130
-
131
- ##################################################
132
- # include_or_extend_cascades_extends_to_module #
133
- ##################################################
134
-
135
- def include_or_extend_cascades_extends_to_module( *extends, & runtime_extends_block )
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 )
139
- end
140
-
141
- ###############################################################
142
- # include_or_extend_cascades_includes_and_extends_to_module #
143
- ###############################################################
144
-
145
- def include_or_extend_cascades_includes_and_extends_to_module( *includes_and_extends, & runtime_includes_and_extends_block )
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 )
149
- end
150
-
151
- ##############################################################
152
- # include_or_extend_cascades_to_module_prepend_includes #
153
- ##############################################################
154
-
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 )
159
- end
160
-
161
- #############################################################
162
- # include_or_extend_cascades_to_module_prepend_extends #
163
- #############################################################
164
-
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 )
169
- end
170
-
171
- ##########################################################################
172
- # include_or_extend_cascades_to_module_prepend_includes_and_extends #
173
- ##########################################################################
174
-
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 )
179
- end
180
-
181
- end