Class: Surrounded::Context::RoleMap

Inherits:
Object
  • Object
show all
Defined in:
lib/surrounded/context/role_map.rb

Class Method Summary collapse

Instance Method Summary collapse

Class Method Details

.from_base(klass = ::Triad) ⇒ Object



8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
# File 'lib/surrounded/context/role_map.rb', line 8

def from_base(klass=::Triad)
  role_mapper = Class.new(::Surrounded::Context::RoleMap)
  num = __LINE__; role_mapper.class_eval %{
    def container
      @container ||= #{klass}.new
    end
  }, __FILE__, num
  %w{ update each values keys }.each do |meth|
    num = __LINE__; role_mapper.class_eval %{
      def #{meth}(*args, &block)
        container.send(:#{meth}, *args, &block)
      end
    }, __FILE__, num
  end
  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

#role?(role) ⇒ Boolean

Returns:

  • (Boolean)


26
27
28
# File 'lib/surrounded/context/role_map.rb', line 26

def role?(role)
  keys.include?(role)
end

#role_player?(object) ⇒ Boolean

Returns:

  • (Boolean)


30
31
32
33
34
# File 'lib/surrounded/context/role_map.rb', line 30

def role_player?(object)
  !values(object).empty?
rescue ::Triad::ItemNotPresent
  false
end