module DCI

Constants

Module

Public Class Methods

Context(*roles, &block) click to toggle source
# File lib/wrapper_based/dci.rb, line 9
def Context(*roles, &block)
  fail_on_wrong_talent_type { return @@casting_pool.context_for(*roles, &block) }
end
Roles(*roles) click to toggle source
# File lib/wrapper_based/dci.rb, line 13
def Roles(*roles)
  fail_on_wrong_talent_type { return @@casting_pool.casting_for(*roles) }
end

Private Class Methods

fail_on_wrong_talent_type(&blk) click to toggle source
# File lib/wrapper_based/dci.rb, line 19
def fail_on_wrong_talent_type(&blk)
  key, wrong, expected = catch(:wrong_talent_type, &blk)
  message = "'#{key}: #{wrong}' has wrong key value type #{wrong.class} (#{expected})"
  raise TypeError, message, caller
end