Class: TTY::Vector
- Inherits:
-
Object
- Object
- TTY::Vector
- Includes:
- Enumerable, Conversion, Equatable
- Defined in:
- lib/tty/vector.rb
Overview
This class represents a mathematical vector.
Direct Known Subclasses
Instance Attribute Summary
Attributes included from Equatable
Class Method Summary collapse
-
.[](*array) ⇒ Vector
Utility method to instantiate a Vector.
Instance Method Summary collapse
-
#[](indx) ⇒ Object
(also: #at, #element)
Return element at index.
-
#[]=(indx, value) ⇒ Object
(also: #set_element)
Set a value of the element for the given index.
-
#each ⇒ self
Iterate over each element in the vector.
-
#empty? ⇒ Boolean
Check if there are not elements.
-
#initialize(array = []) ⇒ undefined
constructor
Instantiate a Vector.
-
#size ⇒ Integer
(also: #length)
Check number of elements.
-
#to_a ⇒ Array
Return the vector elements in an array.
-
#to_ary ⇒ Object
Convert to array.
Methods included from Equatable
#attr_reader, included, #inherited
Methods included from Conversion
Constructor Details
#initialize(array = []) ⇒ undefined
Instantiate a Vector
30 31 32 |
# File 'lib/tty/vector.rb', line 30 def initialize(array=[]) @elements = convert_to_array(array) end |
Class Method Details
.[](*array) ⇒ Vector
Utility method to instantiate a Vector
19 20 21 |
# File 'lib/tty/vector.rb', line 19 def self.[](*array) new convert_to_array(array) end |
Instance Method Details
#[](indx) ⇒ Object Also known as: at, element
Return element at index.
43 44 45 |
# File 'lib/tty/vector.rb', line 43 def [](indx) elements[indx] end |
#[]=(indx, value) ⇒ Object Also known as: set_element
Set a value of the element for the given index.
60 61 62 |
# File 'lib/tty/vector.rb', line 60 def []=(indx, value) self.elements[indx] = value end |
#each ⇒ self
Iterate over each element in the vector
74 75 76 77 78 |
# File 'lib/tty/vector.rb', line 74 def each return to_enum unless block_given? to_ary.each { |element| yield element } self end |
#empty? ⇒ Boolean
Check if there are not elements.
94 95 96 |
# File 'lib/tty/vector.rb', line 94 def empty? to_ary.empty? end |
#size ⇒ Integer Also known as: length
Check number of elements.
103 104 105 |
# File 'lib/tty/vector.rb', line 103 def size to_ary.size end |
#to_a ⇒ Array
Return the vector elements in an array.
113 114 115 |
# File 'lib/tty/vector.rb', line 113 def to_a to_ary.dup end |
#to_ary ⇒ Object
Convert to array
@return [Array]
85 86 87 |
# File 'lib/tty/vector.rb', line 85 def to_ary @elements end |