Sha256: fb8c09efb7ebbae6b5f9e8faecf60db41fc6d9a913c6d70ab69e07b58cd16d59

Contents?: true

Size: 981 Bytes

Versions: 10

Compression:

Stored size: 981 Bytes

Contents

# frozen_string_literal: true

module Vedeu

  module Interfaces

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

      singleton_class.send(:alias_method, :interfaces, :repository)

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

      # Returns the interfaces in zindex order.
      #
      # @example
      #   Vedeu.interfaces.zindexed
      #
      # @return [Array<Vedeu::Interfaces::Interface>]
      # @see Vedeu::Interfaces::DSL#zindex
      def zindexed
        all.sort_by(&:zindex)
      end

    end # Interfaces

    class Interface

      repo Vedeu::Interfaces::Repository.repository

    end # Interface

  end # Interfaces

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

end # Vedeu

Version data entries

10 entries across 10 versions & 1 rubygems

Version Path
vedeu-0.8.10 lib/vedeu/interfaces/repository.rb
vedeu-0.8.9 lib/vedeu/interfaces/repository.rb
vedeu-0.8.8 lib/vedeu/interfaces/repository.rb
vedeu-0.8.7 lib/vedeu/interfaces/repository.rb
vedeu-0.8.6 lib/vedeu/interfaces/repository.rb
vedeu-0.8.5 lib/vedeu/interfaces/repository.rb
vedeu-0.8.4 lib/vedeu/interfaces/repository.rb
vedeu-0.8.3 lib/vedeu/interfaces/repository.rb
vedeu-0.8.2 lib/vedeu/interfaces/repository.rb
vedeu-0.8.1 lib/vedeu/interfaces/repository.rb