Class: Vedeu::Presentation::Style
- Inherits:
-
Object
- Object
- Vedeu::Presentation::Style
- Includes:
- Common
- Defined in:
- lib/vedeu/output/presentation/style.rb
Overview
Converts the style value or value collection into a terminal escape sequence. Unrecognised values are discarded- an empty string is returned.
Vedeu has a range of symbol styles which are compatible with most terminals which are ANSI compatible. Like colours, they can be defined in either interfaces, for specific lines or within streams. Styles are applied as encountered.
Instance Attribute Summary collapse
Class Method Summary collapse
-
.coerce(value) ⇒ Object
Produces new objects of the correct class from the value, ignores objects that have already been coerced.
Instance Method Summary collapse
-
#attributes ⇒ Hash<Symbol => Array<String|Symbol>|String|Symbol>
Return an attributes hash for this class.
-
#eql?(other) ⇒ Boolean
(also: #==)
An object is equal when its values are the same.
-
#initialize(value = nil) ⇒ Vedeu::Presentation::Style
constructor
Return a new instance of Vedeu::Presentation::Style.
-
#to_s ⇒ String
(also: #escape_sequences, #to_str)
Return the terminal escape sequences after converting the style or styles.
Methods included from Common
#demodulize, #present?, #snake_case
Constructor Details
#initialize(value = nil) ⇒ Vedeu::Presentation::Style
Return a new instance of Vedeu::Presentation::Style.
44 45 46 |
# File 'lib/vedeu/output/presentation/style.rb', line 44 def initialize(value = nil) @value = value end |
Instance Attribute Details
#value ⇒ String|Symbol
22 23 24 |
# File 'lib/vedeu/output/presentation/style.rb', line 22 def value @value end |
Class Method Details
.coerce(value) ⇒ Object
Produces new objects of the correct class from the value, ignores objects that have already been coerced.
29 30 31 32 33 34 35 36 37 |
# File 'lib/vedeu/output/presentation/style.rb', line 29 def self.coerce(value) if value.is_a?(self) value else new(value) end end |
Instance Method Details
#attributes ⇒ Hash<Symbol => Array<String|Symbol>|String|Symbol>
Return an attributes hash for this class.
51 52 53 54 55 |
# File 'lib/vedeu/output/presentation/style.rb', line 51 def attributes { style: value, } end |
#eql?(other) ⇒ Boolean Also known as: ==
An object is equal when its values are the same.
61 62 63 |
# File 'lib/vedeu/output/presentation/style.rb', line 61 def eql?(other) self.class == other.class && value == other.value end |
#to_s ⇒ String Also known as: escape_sequences, to_str
Return the terminal escape sequences after converting the style or styles.
70 71 72 73 74 75 76 |
# File 'lib/vedeu/output/presentation/style.rb', line 70 def to_s return '' unless present?(value) @sequences ||= Array(value).flatten.map do |v| Vedeu::Esc.string(v) end.join end |