Module: Konjure

Defined in:
lib/konjure/version.rb,
lib/konjure/define_method.rb

Constant Summary collapse

VERSION =
'0.0.3'
TYPE_SHORTCUTS =
{
  bool:       'B',
  boolean:    'B',
  char:       'c',
  class:      '#',
  double:     'd',
  float:      'f',
  id:         '@',
  int:        'i',
  long:       'l',
  long_long:  'q',
  object:     '@',
  pointer:    '^',
  sel:        ':',
  selector:   ':',
  short:      's',
  string:     '*',
  uchar:      'C',
  uint:       'I',
  ulong:      'L',
  ulong_long: 'Q',
  ushort:     'S',
}

Class Method Summary collapse

Class Method Details

.encode_objc_types(types) ⇒ Object



26
27
28
29
30
# File 'lib/konjure/define_method.rb', line 26

def self.encode_objc_types(types)
  types.flatten.map do |type|
    TYPE_SHORTCUTS[type] || type
  end
end

.objc_parameter_signature(block) ⇒ Object



32
33
34
# File 'lib/konjure/define_method.rb', line 32

def self.objc_parameter_signature(block)
  '@' * block.arity.abs
end