Sha256: 0be9fd8dbba95cccf7c5806bdcc11f21f862ac83841c3b380eb8e4deb1a147f4

Contents?: true

Size: 561 Bytes

Versions: 1

Compression:

Stored size: 561 Bytes

Contents

require 'tangle/mixin/ancestry'
require 'tangle/mixin/connectedness'

module Tangle
  module Mixin
    #
    # Mixin to initialize the dynamic mixin system
    #
    module Initialize
      private

      def initialize_mixins(mixins = nil)
        klass = self.class.name[/[^:]+$/].to_sym
        @mixins = mixins unless mixins.nil?
        mixins ||= @graph.mixins unless @graph.nil?

        return if mixins.nil?

        mixins.each do |mixin|
          extend(mixin.const_get(klass)) if mixin.const_defined?(klass)
        end
      end
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
tangle-0.4.0 lib/tangle/mixin.rb