Sha256: cc9d0033e28a0e6caced533d652001a525d9d541b9338186cc49d7e31f13bd91
Contents?: true
Size: 1.38 KB
Versions: 1
Compression:
Stored size: 1.38 KB
Contents
# frozen_string_literal: true module Vedeu module Buffers # Provides a grid of Vedeu::Cells::Empty objects at the given # height and width. # # @api private class Empty include Vedeu::Repositories::Defaults # @!attribute [r] name # @return [NilClass|String|Symbol] attr_reader :name # @!attribute [r] x # @return [Fixnum] attr_reader :x # @!attribute [r] y # @return [Fixnum] attr_reader :y # @return [Array<Array<Vedeu::Cells::Empty>>] def buffer @buffer ||= empty end # @return [Fixnum] def height @height + 1 end # @return [Fixnum] def width @width + 1 end private # Returns the default options/attributes for this class. # # @return [Hash<Symbol => Fixnum|NilClass|String|Symbol>] def defaults { height: Vedeu.height, name: nil, width: Vedeu.width, x: 1, y: 1, } end # @return [Array<Array<Vedeu::Cells::Empty>>] def empty Array.new(height) do |h| Array.new(width) do |w| position = Vedeu::Geometries::Position.new((y + h), (x + w)) Vedeu::Cells::Empty.new(name: name, position: position) end end end end # Empty end # Buffers end # Vedeu
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
vedeu-0.8.9 | lib/vedeu/buffers/empty.rb |