module GirFFI::TypeMap

Maps GObject type tags and type specification to types FFI can handle.

Constants

TAG_TYPE_MAP

Public Class Methods

map_basic_type(type) click to toggle source
# File lib/gir_ffi/type_map.rb, line 41
def self.map_basic_type(type)
  sym = type.to_sym
  TAG_TYPE_MAP[sym] || sym
end
type_specification_to_ffi_type(type) click to toggle source
# File lib/gir_ffi/type_map.rb, line 50
def self.type_specification_to_ffi_type(type)
  case type
  when Module
    type.to_ffi_type
  when Array
    type[0]
  else
    map_basic_type(type)
  end
end
type_specification_to_ffitype(type) click to toggle source
# File lib/gir_ffi/type_map.rb, line 46
def self.type_specification_to_ffitype(type)
  type_specification_to_ffi_type type
end