Sha256: 4a6fca5a62ccc05f2d7e7cade3ca40c8d89f3fa618afe64c1cb38f75de78630a

Contents?: true

Size: 537 Bytes

Versions: 8

Compression:

Stored size: 537 Bytes

Contents

require 'gir_ffi/user_defined_property_info'

module GirFFI
  # Represents a user defined type, conforming, as needed, to the interface of
  # GObjectIntrospection::IObjectInfo.
  class UserDefinedTypeInfo
    def initialize klass, &block
      @klass = klass
      @properties = []
      self.instance_eval(&block) if block
    end

    def described_class
      @klass
    end

    def install_property property
      @properties << UserDefinedPropertyInfo.new(property)
    end

    def properties
      @properties
    end
  end
end

Version data entries

8 entries across 8 versions & 1 rubygems

Version Path
gir_ffi-0.6.7 lib/gir_ffi/user_defined_type_info.rb
gir_ffi-0.6.6 lib/gir_ffi/user_defined_type_info.rb
gir_ffi-0.6.5 lib/gir_ffi/user_defined_type_info.rb
gir_ffi-0.6.4 lib/gir_ffi/user_defined_type_info.rb
gir_ffi-0.6.3 lib/gir_ffi/user_defined_type_info.rb
gir_ffi-0.6.2 lib/gir_ffi/user_defined_type_info.rb
gir_ffi-0.6.1 lib/gir_ffi/user_defined_type_info.rb
gir_ffi-0.6.0 lib/gir_ffi/user_defined_type_info.rb