Sha256: c768c598547eb7ece065286995ff2ef4a3731514c308c0c785d9d2f9403416d7

Contents?: true

Size: 978 Bytes

Versions: 6

Compression:

Stored size: 978 Bytes

Contents

#
# Copyright (c) 2018 Patrick Thomas.  All rights reserved.
#
require 'cayuga'

module Cayuga
  module Object
    # noinspection RubyModuleAsSuperclassInspection
    class Constants < Singleton
      def constant(constant)
        constants[constant.symbolize]
      end

      alias [] :constant

      def directory(constant)
        directories[constant.symbolize]
      end

      def file(constant)
        files[constant.symbolize]
      end

      def repository(constant)
        repositories[constant.symbolize]
      end

      private_class_method :new

      private

      attr_reader :factory, :constants, :directories, :files, :repositories

      def initialize(factory, configuration)
        super
        @constants = configuration[:constants]
        @directories = configuration[:directories]
        @files = configuration[:files]
        @repositories = configuration[:repositories]
      end

    end
  end
end

Version data entries

6 entries across 6 versions & 1 rubygems

Version Path
cayuga-0.0.16 lib/cayuga/object/constants.rb
cayuga-0.0.15 lib/cayuga/object/constants.rb
cayuga-0.0.14 lib/cayuga/object/constants.rb
cayuga-0.0.13 lib/cayuga/object/constants.rb
cayuga-0.0.12 lib/cayuga/object/constants.rb
cayuga-0.0.11 lib/cayuga/object/constants.rb