Sha256: 95cdbd9af48b23d593ad6cade8cc3b1679e336d2fe6d8f4bf9f00d5e5fad7102

Contents?: true

Size: 1.04 KB

Versions: 2

Compression:

Stored size: 1.04 KB

Contents

# frozen_string_literal: true
require 'ffi-gobject_introspection/i_base_info'
require 'ffi-gobject_introspection/i_type_info'
require 'ffi-gobject_introspection/i_arg_info'

module GObjectIntrospection
  # Wraps a GICallableInfo struct; represents a callable, either
  # IFunctionInfo, ICallbackInfo or IVFuncInfo.
  class ICallableInfo < IBaseInfo
    def return_type
      ITypeInfo.wrap Lib.g_callable_info_get_return_type(@gobj)
    end

    def caller_owns
      Lib.g_callable_info_get_caller_owns @gobj
    end

    def may_return_null?
      Lib.g_callable_info_may_return_null @gobj
    end

    def can_throw_gerror?
      Lib.g_callable_info_can_throw_gerror @gobj
    end

    def n_args
      Lib.g_callable_info_get_n_args @gobj
    end

    def arg(index)
      IArgInfo.wrap Lib.g_callable_info_get_arg(@gobj, index)
    end
    ##
    build_array_method :args

    def skip_return?
      Lib.g_callable_info_skip_return @gobj
    end

    def instance_ownership_transfer
      Lib.g_callable_info_get_instance_ownership_transfer @gobj
    end
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
gir_ffi-0.11.1 lib/ffi-gobject_introspection/i_callable_info.rb
gir_ffi-0.11.0 lib/ffi-gobject_introspection/i_callable_info.rb