Sha256: c68dff6d4692bbe310c33ef9f9260d8998171e7f6fd9c1be9b3a24706dbe8711

Contents?: true

Size: 997 Bytes

Versions: 4

Compression:

Stored size: 997 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
  #
  # @api public
  # @!method interfaces
  # @return [Vedeu::Interfaces::Repository]
  def_delegators Vedeu::Interfaces::Repository,
                 :interfaces

end # Vedeu

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
vedeu-0.8.15 lib/vedeu/interfaces/repository.rb
vedeu-0.8.14 lib/vedeu/interfaces/repository.rb
vedeu-0.8.13 lib/vedeu/interfaces/repository.rb
vedeu-0.8.12 lib/vedeu/interfaces/repository.rb