Sha256: 8af53a3be6e5ffbb1bf929e6130de99d31092d661748f646ce27babc5051b213

Contents?: true

Size: 590 Bytes

Versions: 9

Compression:

Stored size: 590 Bytes

Contents

# frozen_string_literal: true
require 'gir_ffi/builders/base_type_builder'
module GirFFI
  module Builders
    # Implements the creation of a constant. Though semantically not a
    # type, its build method is like that of the types, in that it is
    # triggered by a missing constant in the parent namespace.  The
    # constant will be attached to the appropriate namespace module.
    class ConstantBuilder < BaseTypeBuilder
      def build_class
        @klass ||= optionally_define_constant namespace_module, @classname do
          info.value
        end
      end
    end
  end
end

Version data entries

9 entries across 9 versions & 1 rubygems

Version Path
gir_ffi-0.11.1 lib/gir_ffi/builders/constant_builder.rb
gir_ffi-0.11.0 lib/gir_ffi/builders/constant_builder.rb
gir_ffi-0.10.2 lib/gir_ffi/builders/constant_builder.rb
gir_ffi-0.10.1 lib/gir_ffi/builders/constant_builder.rb
gir_ffi-0.10.0 lib/gir_ffi/builders/constant_builder.rb
gir_ffi-0.10.0.pre1 lib/gir_ffi/builders/constant_builder.rb
gir_ffi-0.9.5 lib/gir_ffi/builders/constant_builder.rb
gir_ffi-0.9.4 lib/gir_ffi/builders/constant_builder.rb
gir_ffi-0.9.3 lib/gir_ffi/builders/constant_builder.rb