Module: GirFFI

Defined in:
lib/gir_ffi.rb,
lib/gir_ffi/lib_c.rb,
lib/gir_ffi/builder.rb,
lib/gir_ffi/version.rb,
lib/gir_ffi/type_map.rb,
lib/gir_ffi/enum_base.rb,
lib/gir_ffi/type_base.rb,
lib/gir_ffi/arg_helper.rb,
lib/gir_ffi/class_base.rb,
lib/gir_ffi/glib_error.rb,
lib/gir_ffi/in_pointer.rb,
lib/gir_ffi/union_base.rb,
lib/gir_ffi/module_base.rb,
lib/gir_ffi/object_base.rb,
lib/gir_ffi/sized_array.rb,
lib/gir_ffi/struct_base.rb,
lib/gir_ffi/callback_base.rb,
lib/gir_ffi/builder_helper.rb,
lib/gir_ffi/in_out_pointer.rb,
lib/gir_ffi/interface_base.rb,
lib/gir_ffi/method_stubber.rb,
lib/gir_ffi/error_type_info.rb,
lib/gir_ffi/ffi_ext/pointer.rb,
lib/gir_ffi/zero_terminated.rb,
lib/gir_ffi/allocation_helper.rb,
lib/gir_ffi/return_value_info.rb,
lib/gir_ffi/receiver_type_info.rb,
lib/gir_ffi/error_argument_info.rb,
lib/gir_ffi/field_argument_info.rb,
lib/gir_ffi/info_ext/i_arg_info.rb,
lib/gir_ffi/builders/with_layout.rb,
lib/gir_ffi/info_ext/i_type_info.rb,
lib/gir_ffi/registered_type_base.rb,
lib/gir_ffi/vfunc_implementation.rb,
lib/gir_ffi/builders/enum_builder.rb,
lib/gir_ffi/builders/null_builder.rb,
lib/gir_ffi/builders/type_builder.rb,
lib/gir_ffi/info_ext/i_field_info.rb,
lib/gir_ffi/info_ext/i_vfunc_info.rb,
lib/gir_ffi/builders/field_builder.rb,
lib/gir_ffi/builders/union_builder.rb,
lib/gir_ffi/builders/vfunc_builder.rb,
lib/gir_ffi/info_ext/i_signal_info.rb,
lib/gir_ffi/user_defined_type_info.rb,
lib/gir_ffi/builders/module_builder.rb,
lib/gir_ffi/builders/object_builder.rb,
lib/gir_ffi/builders/struct_builder.rb,
lib/gir_ffi/info_ext/full_type_name.rb,
lib/gir_ffi/variable_name_generator.rb,
lib/gir_ffi/info_ext/i_callable_info.rb,
lib/gir_ffi/info_ext/i_callback_info.rb,
lib/gir_ffi/info_ext/i_function_info.rb,
lib/gir_ffi/info_ext/i_property_info.rb,
lib/gir_ffi/builders/argument_builder.rb,
lib/gir_ffi/builders/callback_builder.rb,
lib/gir_ffi/builders/constant_builder.rb,
lib/gir_ffi/builders/function_builder.rb,
lib/gir_ffi/builders/property_builder.rb,
lib/gir_ffi/builders/base_type_builder.rb,
lib/gir_ffi/builders/interface_builder.rb,
lib/gir_ffi/unintrospectable_type_info.rb,
lib/gir_ffi/user_defined_property_info.rb,
lib/gir_ffi/info_ext/safe_constant_name.rb,
lib/gir_ffi/info_ext/safe_function_name.rb,
lib/gir_ffi/builders/return_value_builder.rb,
lib/gir_ffi/builders/user_defined_builder.rb,
lib/gir_ffi/builders/base_argument_builder.rb,
lib/gir_ffi/builders/null_argument_builder.rb,
lib/gir_ffi/builders/error_argument_builder.rb,
lib/gir_ffi/builders/mapping_method_builder.rb,
lib/gir_ffi/builders/signal_closure_builder.rb,
lib/gir_ffi/info_ext/i_registered_type_info.rb,
lib/gir_ffi/builders/registered_type_builder.rb,
lib/gir_ffi/builders/closure_argument_builder.rb,
lib/gir_ffi/builders/unintrospectable_builder.rb,
lib/gir_ffi/builders/callback_argument_builder.rb,
lib/gir_ffi/builders/marshalling_method_builder.rb,
lib/gir_ffi/builders/argument_builder_collection.rb,
lib/gir_ffi/builders/callback_return_value_builder.rb

Overview

Current GirFFI version

Defined Under Namespace

Modules: AllocationHelper, ArgHelper, Builder, BuilderHelper, Builders, EnumBase, FFIExt, InfoExt, InterfaceBase, LibC, ModuleBase, RegisteredTypeBase, TypeBase, TypeMap Classes: BaseTypeBuilder, CallbackBase, ClassBase, ErrorArgumentInfo, ErrorTypeInfo, FieldArgumentInfo, GLibError, GType, InOutPointer, InPointer, MethodStubber, NullArgumentBuilder, NullBuilder, ObjectBase, ReceiverArgumentInfo, ReceiverTypeInfo, ReturnValueInfo, SizedArray, StructBase, UnintrospectableTypeInfo, UnionBase, UserDataArgumentInfo, UserDataTypeInfo, UserDefinedPropertyInfo, UserDefinedTypeInfo, VFuncImplementation, VariableNameGenerator, ZeroTerminated

Constant Summary collapse

VERSION =
"0.7.5"

Class Method Summary collapse

Class Method Details

.define_type(klass, &block) ⇒ Object



28
29
30
31
32
33
# File 'lib/gir_ffi.rb', line 28

def self.define_type klass, &block
  info = UserDefinedTypeInfo.new(klass, &block)
  Builders::UserDefinedBuilder.new(info).build_class

  klass.get_gtype
end

.setup(module_name, version = nil) ⇒ Object



23
24
25
26
# File 'lib/gir_ffi.rb', line 23

def self.setup module_name, version=nil
  module_name = module_name.to_s
  GirFFI::Builder.build_module module_name, version
end