Class: GirFFI::Builders::UserDefinedBuilder

Inherits:
ObjectBuilder show all
Defined in:
lib/gir_ffi/builders/user_defined_builder.rb

Overview

Implements the creation of GObject subclasses from Ruby.

Instance Attribute Summary

Attributes inherited from GirFFI::BaseTypeBuilder

#info

Instance Method Summary collapse

Methods inherited from ObjectBuilder

#ancestor_infos, #find_property, #find_signal, #object_class_struct

Methods inherited from RegisteredTypeBuilder

#setup_instance_method, #setup_method

Methods inherited from GirFFI::BaseTypeBuilder

#build_class, #instantiate_class

Methods included from GirFFI::BuilderHelper

#get_or_define_class, #get_or_define_module, #optionally_define_constant

Constructor Details

#initialize(info) ⇒ UserDefinedBuilder

Returns a new instance of UserDefinedBuilder.



8
9
10
# File 'lib/gir_ffi/builders/user_defined_builder.rb', line 8

def initialize info
  @info = info
end

Instance Method Details

#setup_classObject



12
13
14
15
16
17
18
19
# File 'lib/gir_ffi/builders/user_defined_builder.rb', line 12

def setup_class
  register_type
  setup_layout
  setup_constants
  setup_property_accessors
  setup_constructor
  TypeBuilder::CACHE[@gtype] = klass
end

#target_gtypeObject



21
22
23
# File 'lib/gir_ffi/builders/user_defined_builder.rb', line 21

def target_gtype
  @gtype ||= klass.get_gtype
end