Module: ModuleCluster::Define::Block::ClassOrModuleOrSubclass

Extended by:
ExtendForCascade
Includes:
CascadeFeatures::ClusterStack, ClassOrModule, Suspend::WithoutHooks
Defined in:
lib/module-cluster.rb,
lib/module-cluster/ModuleCluster/Define/Block/ClassOrModuleOrSubclass.rb

Class Method Summary collapse

Instance Method Summary collapse

Methods included from ExtendForCascade

extended

Methods included from Suspend::WithoutHooks

#without_any_extend_hooks, #without_any_hooks, #without_any_include_hooks, #without_extend_hooks, #without_include_hooks, #without_prepend_extend_hooks, #without_prepend_include_hooks

Methods included from Suspend::Hooks

#all_extend_hooks_suspended?, #all_hooks_suspended?, #all_include_hooks_suspended?, #extend_hooks_suspended?, #hooks_suspended?, #include_hooks_suspended?, #prepend_extend_hooks_suspended?, #prepend_include_hooks_suspended?, #resume_any_extend_hooks, #resume_any_hooks, #resume_any_include_hooks, #resume_extend_hooks, #resume_include_hooks, #resume_prepend_extend_hooks, #resume_prepend_include_hooks, #suspend_any_extend_hooks, #suspend_any_hooks, #suspend_any_include_hooks, #suspend_extend_hooks, #suspend_include_hooks, #suspend_prepend_extend_hooks, #suspend_prepend_include_hooks

Methods included from ClassOrModule

#class_or_module_extend, #class_or_module_include, #class_or_module_include_or_extend, #prepend_class_or_module_extend, #prepend_class_or_module_include, #prepend_class_or_module_include_or_extend

Methods included from Module

#module_extend, #module_include, #module_include_or_extend, #prepend_module_extend, #prepend_module_include, #prepend_module_include_or_extend

Methods included from CascadeFeatures::ClusterStack

#cluster_stack, cluster_stack, cluster_stacks

Methods included from Class

#class_extend, #class_include, #class_include_or_extend, #prepend_class_extend, #prepend_class_include, #prepend_class_include_or_extend

Class Method Details

.should_cascade?(class_or_module) ⇒ Boolean

self.should_cascade? #

Returns:

  • (Boolean)


14
15
16
# File 'lib/module-cluster/ModuleCluster/Define/Block/ClassOrModuleOrSubclass.rb', line 14

def self.should_cascade?( class_or_module )
  return false
end

.should_run_block?(hooked_instance) ⇒ Boolean

self.should_run_block? #

Returns:

  • (Boolean)


22
23
24
# File 'lib/module-cluster/ModuleCluster/Define/Block/ClassOrModuleOrSubclass.rb', line 22

def self.should_run_block?( hooked_instance )
  return hooked_instance.is_a?( Module )
end

Instance Method Details

#class_or_module_include_or_subclass(&runtime_block) ⇒ Object

class_or_module_include_or_subclass #



30
31
32
33
34
# File 'lib/module-cluster/ModuleCluster/Define/Block/ClassOrModuleOrSubclass.rb', line 30

def class_or_module_include_or_subclass( & runtime_block )
  class_or_module_set = class_or_module_include( & runtime_block )
  subclass_set = cluster_stack.subclass( ::ModuleCluster::Define::Block::ClassOrModuleOrSubclass, __method__, runtime_block )
  return ::ModuleCluster::ClusterStack::Set::MultiSetProxy.new( class_or_module_set, subclass_set )    
end