Class: Surrounded::Context::RoleMap
- Inherits:
-
Object
- Object
- Surrounded::Context::RoleMap
- Extended by:
- Forwardable
- Defined in:
- lib/surrounded/context/role_map.rb
Class Method Summary collapse
Instance Method Summary collapse
- #assigned_player(role) ⇒ Object
- #container ⇒ Object
- #role?(role) ⇒ Boolean
- #role_player?(object) ⇒ Boolean
Class Method Details
.container_class=(klass) ⇒ Object
17 18 19 |
# File 'lib/surrounded/context/role_map.rb', line 17 def container_class=(klass) @container_class = klass end |
.from_base(klass = ::Triad) ⇒ Object
9 10 11 12 13 14 15 |
# File 'lib/surrounded/context/role_map.rb', line 9 def from_base(klass=::Triad) role_mapper = Class.new(self) Surrounded::Exceptions.define(role_mapper, exceptions: :ItemNotPresent, namespace: klass) role_mapper.container_class=(klass) role_mapper.def_delegators :container, :update, :each, :values, :keys role_mapper end |
Instance Method Details
#assigned_player(role) ⇒ Object
36 37 38 |
# File 'lib/surrounded/context/role_map.rb', line 36 def assigned_player(role) values(role).first end |
#container ⇒ Object
22 23 24 |
# File 'lib/surrounded/context/role_map.rb', line 22 def container @container ||= self.class.instance_variable_get(:@container_class).new end |
#role?(role) ⇒ Boolean
26 27 28 |
# File 'lib/surrounded/context/role_map.rb', line 26 def role?(role) keys.include?(role) end |
#role_player?(object) ⇒ Boolean
30 31 32 33 34 |
# File 'lib/surrounded/context/role_map.rb', line 30 def role_player?(object) !values(object).empty? rescue ::StandardError false end |