Sha256: 78501ec8aa7e0154e1020c84554658ca6cd883c2bb1ac9b60594900c896f2865

Contents?: true

Size: 730 Bytes

Versions: 2

Compression:

Stored size: 730 Bytes

Contents

require 'gir_ffi/builders/registered_type_builder'
require 'gir_ffi/builders/with_layout'
require 'gir_ffi/builders/with_methods'
require 'gir_ffi/struct_base'

module GirFFI
  module Builders
    # Implements the creation of a class representing a Struct.
    class StructBuilder < RegisteredTypeBuilder
      include WithMethods
      include WithLayout

      private

      def setup_class
        setup_layout
        setup_constants
        stub_methods
        setup_gtype_getter
        setup_field_accessors
        provide_constructor
      end

      # FIXME: Private method only in subclass
      def layout_superclass
        FFI::Struct
      end

      def superclass
        StructBase
      end
    end
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
gir_ffi-0.7.1 lib/gir_ffi/builders/struct_builder.rb
gir_ffi-0.7.0 lib/gir_ffi/builders/struct_builder.rb