class GirFFI::Builders::RubyToCConvertor

Builder that generates code to convert values from Ruby to C. Used by argument builders.

Public Class Methods

new(type_info, argument_name) click to toggle source
# File lib/gir_ffi/builders/ruby_to_c_convertor.rb, line 6
def initialize(type_info, argument_name)
  @type_info = type_info
  @argument_name = argument_name
end

Public Instance Methods

conversion() click to toggle source
# File lib/gir_ffi/builders/ruby_to_c_convertor.rb, line 11
def conversion
  args = conversion_arguments @argument_name
  "#{@type_info.argument_class_name}.from(#{args})"
end
conversion_arguments(name) click to toggle source
# File lib/gir_ffi/builders/ruby_to_c_convertor.rb, line 16
def conversion_arguments(name)
  @type_info.extra_conversion_arguments.map(&:inspect).push(name).join(', ')
end