Sha256: 0378c9fee27bcbec459df15702d86121de5423d14da2bef850897803829f920b
Contents?: true
Size: 1.06 KB
Versions: 3
Compression:
Stored size: 1.06 KB
Contents
require 'gir_ffi/builder/type/registered_type' module GirFFI module Builder module Type # Implements the creation of a class representing one of the types # whose C representation is a struct, i.e., :object, :struct, and # :interface. class StructBased < RegisteredType def build_class unless defined? @klass instantiate_struct_class end @klass end def instantiate_struct_class @klass = get_or_define_class namespace_module, @classname, superclass @structklass = get_or_define_class @klass, :Struct, FFI::Struct setup_class unless already_set_up end def find_signal signal_name signal_definers.each do |inf| inf.signals.each do |sig| return sig if sig.name == signal_name end end if parent return superclass.gir_ffi_builder.find_signal signal_name end end def signal_definers [info] end end end end end
Version data entries
3 entries across 3 versions & 1 rubygems
Version | Path |
---|---|
gir_ffi-0.0.10 | lib/gir_ffi/builder/type/struct_based.rb |
gir_ffi-0.0.9 | lib/gir_ffi/builder/type/struct_based.rb |
gir_ffi-0.0.8 | lib/gir_ffi/builder/type/struct_based.rb |