Module: Surrounded::Context

Defined in:
lib/surrounded/context.rb,
lib/surrounded/access_control.rb,
lib/surrounded/context/role_map.rb,
lib/surrounded/context/seclusion.rb,
lib/surrounded/context/forwarding.rb,
lib/surrounded/context/negotiator.rb,
lib/surrounded/context/initializing.rb,
lib/surrounded/context/role_builders.rb,
lib/surrounded/context/trigger_controls.rb,
lib/surrounded/context/name_collision_detector.rb

Defined Under Namespace

Modules: Forwarding, Initializing, InstanceMethods, NameCollisionDetector, RoleBuilders, Seclusion, TriggerControls Classes: AccessError, InvalidRoleType, NameCollisionError, Negotiator, RoleMap, RoleName

Class Attribute Summary collapse

Class Method Summary collapse

Class Attribute Details

.default_role_typeObject

Set the default type of implementation for role methods for all contexts.



37
38
39
# File 'lib/surrounded/context.rb', line 37

def self.default_role_type
  @default_role_type ||= :module
end

Class Method Details

.extended(base) ⇒ Object



21
22
23
24
25
26
27
28
29
30
31
32
33
34
# File 'lib/surrounded/context.rb', line 21

def self.extended(base)
  base.class_eval {
    extend Seclusion, RoleBuilders, Initializing, Forwarding, NameCollisionDetector

    @triggers = Set.new
    include InstanceMethods

    trigger_mod = Module.new
    const_set(:TriggerMethods, trigger_mod)
    include trigger_mod

    extend TriggerControls
  }
end