Sha256: c73936227ab6503ee804a0fc634b80f9924f9567c9a1c641f83bcfb3ca0e5d3b

Contents?: true

Size: 887 Bytes

Versions: 1

Compression:

Stored size: 887 Bytes

Contents

require 'vedeu/null/interface'
require 'vedeu/models/interface'

module Vedeu

  # Allows the storing of interfaces and views.
  #
  # @api public
  class Interfaces < Repository

    class << self

      alias_method :interfaces, :repository

      # Remove all stored models from the repository.
      #
      # @example
      #   Vedeu.interfaces.reset!
      #
      # @return [Vedeu::Interfaces]
      def reset!
        @interfaces = register(Vedeu::Interface)
      end
      alias_method :reset, :reset!

    end # Eigenclass

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

    # Returns the interfaces in zindex order.
    #
    # @example
    #   Vedeu.interfaces.zindexed
    #
    # @return [Array<Vedeu::Interface>]
    # @see Vedeu::DSL::Interface#zindex
    def zindexed
      all.sort { |a, b| a.zindex <=> b.zindex }
    end

  end # Interfaces

end # Vedeu

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
vedeu-0.4.46 lib/vedeu/repositories/repositories/interfaces.rb