Sha256: 94258f0bafbc0328410bfb6a92b54ef17f6fd33f15d6bb85a46ef1e7212e1077

Contents?: true

Size: 565 Bytes

Versions: 13

Compression:

Stored size: 565 Bytes

Contents

# frozen_string_literal: true

module GirFFI
  module InfoExt
    # Extensions for GObjectIntrospection::IValueInfo needed by GirFFI
    module IValueInfo
      def constant_name
        upcased_name = name.upcase
        if /^[0-9]/.match?(upcased_name)
          "VALUE_#{upcased_name}"
        else
          upcased_name
        end
      end

      def to_callback_ffi_type
        return :pointer if direction != :in

        argument_type.to_callback_ffi_type
      end
    end
  end
end

GObjectIntrospection::IValueInfo.include GirFFI::InfoExt::IValueInfo

Version data entries

13 entries across 13 versions & 1 rubygems

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