Sha256: f88dfc6a7e2a1fa7c12ed22987d8ea9f6682010804d8c786a8800b5f003f1d9c

Contents?: true

Size: 955 Bytes

Versions: 9

Compression:

Stored size: 955 Bytes

Contents

# frozen_string_literal: true

module Vedeu

  module Interfaces

    # Allows the storing of interfaces and views.
    #
    # @api private
    #
    class Repository < Vedeu::Repositories::Repository

      null Vedeu::Interfaces::Null
      real Vedeu::Interfaces::Interface

      # Returns the interface names in zindex order.
      #
      # @example
      #   Vedeu.interfaces.zindexed
      #
      # @return [Array<String|Symbol>]
      # @see Vedeu::Interfaces::DSL#zindex
      def zindexed
        all.sort_by(&:zindex).map(&:name)
      end

    end # Interfaces

    class Interface

      repo Vedeu::Interfaces::Repository.repository

    end # Interface

  end # Interfaces

  # Manipulate the repository of interfaces.
  #
  # @example
  #   Vedeu.interfaces
  #
  # @api public
  # @!method interfaces
  # @return [Vedeu::Interfaces::Repository]
  def_delegators Vedeu::Interfaces::Repository,
                 :interfaces

end # Vedeu

Version data entries

9 entries across 9 versions & 1 rubygems

Version Path
vedeu-0.8.32 lib/vedeu/interfaces/repository.rb
vedeu-0.8.31 lib/vedeu/interfaces/repository.rb
vedeu-0.8.30 lib/vedeu/interfaces/repository.rb
vedeu-0.8.29 lib/vedeu/interfaces/repository.rb
vedeu-0.8.28 lib/vedeu/interfaces/repository.rb
vedeu-0.8.27 lib/vedeu/interfaces/repository.rb
vedeu-0.8.26 lib/vedeu/interfaces/repository.rb
vedeu-0.8.25 lib/vedeu/interfaces/repository.rb
vedeu-0.8.24 lib/vedeu/interfaces/repository.rb