Class: Vedeu::Grid
- Inherits:
-
Object
- Object
- Vedeu::Grid
- Defined in:
- lib/vedeu/geometry/grid.rb
Overview
Divides horizontal terminal space into 12 equal columns, discarding the remainder.
Instance Attribute Summary collapse
-
#value ⇒ Object
readonly
private
Returns the value of attribute value.
Class Method Summary collapse
Instance Method Summary collapse
- #actual ⇒ Fixnum private
-
#column ⇒ Fixnum
private
Returns the width of a single column in characters.
- #columns ⇒ Fixnum|OutOfRange
- #initialize(value) ⇒ Grid constructor
- #out_of_range? ⇒ Boolean private
Constructor Details
#initialize(value) ⇒ Grid
37 38 39 |
# File 'lib/vedeu/geometry/grid.rb', line 37 def initialize(value) @value = value end |
Instance Attribute Details
#value ⇒ Object (readonly, private)
Returns the value of attribute value.
53 54 55 |
# File 'lib/vedeu/geometry/grid.rb', line 53 def value @value end |
Class Method Details
.columns(value) ⇒ Fixnum
31 32 33 |
# File 'lib/vedeu/geometry/grid.rb', line 31 def self.columns(value) new(value).columns end |
Instance Method Details
#actual ⇒ Fixnum (private)
63 64 65 |
# File 'lib/vedeu/geometry/grid.rb', line 63 def actual Terminal.width end |
#column ⇒ Fixnum (private)
Returns the width of a single column in characters.
58 59 60 |
# File 'lib/vedeu/geometry/grid.rb', line 58 def column actual / 12 end |
#columns ⇒ Fixnum|OutOfRange
44 45 46 47 48 49 |
# File 'lib/vedeu/geometry/grid.rb', line 44 def columns fail OutOfRange, 'Valid value between 1 and 12 inclusive.' if out_of_range? column * value end |
#out_of_range? ⇒ Boolean (private)
68 69 70 |
# File 'lib/vedeu/geometry/grid.rb', line 68 def out_of_range? value < 1 || value > 12 end |