Sha256: 6eaa44362fac5dab2dc7fc906190bebb4080e10528350089205c4fa6917b4c61

Contents?: true

Size: 472 Bytes

Versions: 14

Compression:

Stored size: 472 Bytes

Contents

# frozen_string_literal: true

module GirFFI
  module InfoExt
    # Extensions for GObjectIntrospection::IFieldInfo needed by GirFFI
    module IFieldInfo
      def layout_specification
        [name.to_sym, field_type.to_ffi_type, offset]
      end

      def related_array_length_field
        index = field_type.array_length
        container.fields[index] if index > -1
      end
    end
  end
end

GObjectIntrospection::IFieldInfo.include GirFFI::InfoExt::IFieldInfo

Version data entries

14 entries across 14 versions & 1 rubygems

Version Path
gir_ffi-0.18.0 lib/gir_ffi/info_ext/i_field_info.rb
gir_ffi-0.17.0 lib/gir_ffi/info_ext/i_field_info.rb
gir_ffi-0.16.1 lib/gir_ffi/info_ext/i_field_info.rb
gir_ffi-0.16.0 lib/gir_ffi/info_ext/i_field_info.rb
gir_ffi-0.15.9 lib/gir_ffi/info_ext/i_field_info.rb
gir_ffi-0.15.8 lib/gir_ffi/info_ext/i_field_info.rb
gir_ffi-0.15.7 lib/gir_ffi/info_ext/i_field_info.rb
gir_ffi-0.15.6 lib/gir_ffi/info_ext/i_field_info.rb
gir_ffi-0.15.5 lib/gir_ffi/info_ext/i_field_info.rb
gir_ffi-0.15.4 lib/gir_ffi/info_ext/i_field_info.rb
gir_ffi-0.15.3 lib/gir_ffi/info_ext/i_field_info.rb
gir_ffi-0.15.2 lib/gir_ffi/info_ext/i_field_info.rb
gir_ffi-0.15.1 lib/gir_ffi/info_ext/i_field_info.rb
gir_ffi-0.15.0 lib/gir_ffi/info_ext/i_field_info.rb