class GirFFI::Builders::UnintrospectableBuilder

Implements the creation of a class representing an object type for which no data is found in the GIR. Typically, these are created to cast objects returned by a function that returns an interface.

Public Instance Methods

instantiate_class() click to toggle source
# File lib/gir_ffi/builders/unintrospectable_builder.rb, line 9
def instantiate_class
  gtype = target_gtype
  TypeBuilder::CACHE[gtype] ||= Class.new(superclass)
  @klass = TypeBuilder::CACHE[gtype]
  @structklass = get_or_define_class @klass, :Struct, layout_superclass
  setup_class unless already_set_up
end
setup_class() click to toggle source
# File lib/gir_ffi/builders/unintrospectable_builder.rb, line 17
def setup_class
  setup_constants
  setup_layout
  setup_interfaces
  setup_gtype_getter
end
setup_instance_method(method) click to toggle source
# File lib/gir_ffi/builders/unintrospectable_builder.rb, line 24
def setup_instance_method method
  false
end

Private Instance Methods

signal_definers() click to toggle source
# File lib/gir_ffi/builders/unintrospectable_builder.rb, line 30
def signal_definers
  info.interfaces
end