Sha256: 01e1cb3eba6cbc57fe6d734df10bfe75909dbb10409aebd7d70bafd174c5570a

Contents?: true

Size: 1.14 KB

Versions: 2

Compression:

Stored size: 1.14 KB

Contents

module Vedeu

  module Null

    # Provides a non-existent model to swallow messages.
    #
    # @api private
    class Generic

      # Returns an instance of the Vedeu::Null::Generic class.
      #
      # @param attributes [Hash<Symbol => void>]
      # @option attributes name [String|NilClass]
      # @return [Vedeu::Null::Generic]
      def initialize(attributes = {})
        @attributes = attributes
        @name       = @attributes[:name]
      end

      # @return [NilClass]
      def add(*)
        nil
      end

      # @return [NilClass]
      def colour
        nil
      end

      # @return [Boolean]
      def null?
        true
      end

      # @return [NilClass]
      def parent
        nil
      end

      # @return [Vedeu::Null::Generic]
      def store
        self
      end

      # @return [NilClass]
      def style
        nil
      end

      # The generic null should not be visible.
      #
      # @return [FalseClass]
      def visible?
        false
      end
      alias_method :visible, :visible?

      # @return [FalseClass]
      def visible=(*)
        false
      end

    end # Generic

  end # Null

end # Vedeu

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
vedeu-0.4.56 lib/vedeu/null/generic.rb
vedeu-0.4.55 lib/vedeu/null/generic.rb