Sha256: 609dfbcb6ce108a0f083f1c28b63c81b2ef3a2440ce1a8d16a34dfb4e841c2c4
Contents?: true
Size: 972 Bytes
Versions: 9
Compression:
Stored size: 972 Bytes
Contents
# frozen_string_literal: true require "gir_ffi/builders/base_type_builder" require "gir_ffi/builders/marshalling_method_builder" module GirFFI module Builders # Implements the creation of a closure class for handling a particular # signal. The type will be attached to the appropriate class. class SignalClosureBuilder < BaseTypeBuilder def setup_class setup_constants klass.class_eval marshaller_definition, __FILE__, __LINE__ end def setup_method(_method) nil end def marshaller_definition MarshallingMethodBuilder.for_signal(info).method_definition end private def klass @klass ||= get_or_define_class container_class, @classname, GObject::RubyClosure end def container_class @container_class ||= Builder.build_class(container_info) end def container_info @container_info ||= info.container end end end end
Version data entries
9 entries across 9 versions & 1 rubygems