Class: SrtValidator::Line
- Inherits:
-
Object
- Object
- SrtValidator::Line
- Defined in:
- lib/srt_validator/line.rb
Instance Attribute Summary collapse
-
#display_coordinates ⇒ Object
Returns the value of attribute display_coordinates.
-
#end_time ⇒ Object
Returns the value of attribute end_time.
-
#error ⇒ Object
Returns the value of attribute error.
-
#sequence ⇒ Object
Returns the value of attribute sequence.
-
#start_time ⇒ Object
Returns the value of attribute start_time.
- #text ⇒ Object
Instance Method Summary collapse
- #clone ⇒ Object
- #empty? ⇒ Boolean
-
#initialize(options = {}) ⇒ Line
constructor
A new instance of Line.
- #time_str(subframe_separator = ",") ⇒ Object
- #to_s(time_str_function = :time_str) ⇒ Object
- #webvtt_time_str ⇒ Object
Constructor Details
#initialize(options = {}) ⇒ Line
Returns a new instance of Line.
14 15 16 17 18 |
# File 'lib/srt_validator/line.rb', line 14 def initialize(={}) .each do |k,v| self.send("#{k}=",v) end end |
Instance Attribute Details
#display_coordinates ⇒ Object
Returns the value of attribute display_coordinates.
3 4 5 |
# File 'lib/srt_validator/line.rb', line 3 def display_coordinates @display_coordinates end |
#end_time ⇒ Object
Returns the value of attribute end_time.
6 7 8 |
# File 'lib/srt_validator/line.rb', line 6 def end_time @end_time end |
#error ⇒ Object
Returns the value of attribute error.
7 8 9 |
# File 'lib/srt_validator/line.rb', line 7 def error @error end |
#sequence ⇒ Object
Returns the value of attribute sequence.
4 5 6 |
# File 'lib/srt_validator/line.rb', line 4 def sequence @sequence end |
#start_time ⇒ Object
Returns the value of attribute start_time.
5 6 7 |
# File 'lib/srt_validator/line.rb', line 5 def start_time @start_time end |
#text ⇒ Object
10 11 12 |
# File 'lib/srt_validator/line.rb', line 10 def text @text ||= [] end |
Instance Method Details
#clone ⇒ Object
20 21 22 23 24 25 26 27 28 29 |
# File 'lib/srt_validator/line.rb', line 20 def clone clone = Line.new clone.display_coordinates = display_coordinates clone.sequence = sequence clone.start_time = start_time clone.end_time = end_time clone.error = error clone.text = text.clone clone end |
#empty? ⇒ Boolean
31 32 33 |
# File 'lib/srt_validator/line.rb', line 31 def empty? sequence.nil? && start_time.nil? && end_time.nil? && text.empty? end |
#time_str(subframe_separator = ",") ⇒ Object
35 36 37 |
# File 'lib/srt_validator/line.rb', line 35 def time_str(subframe_separator=",") [@start_time, @end_time].map { |t| sprintf("%02d:%02d:%02d#{subframe_separator}%s", t / 3600, (t % 3600) / 60, t % 60, sprintf("%.3f", t)[-3, 3]) }.join(" --> ") end |
#to_s(time_str_function = :time_str) ⇒ Object
43 44 45 |
# File 'lib/srt_validator/line.rb', line 43 def to_s(time_str_function=:time_str) [sequence, (display_coordinates ? send(time_str_function) + display_coordinates : send(time_str_function)), text, ''].flatten.join("\n") end |
#webvtt_time_str ⇒ Object
39 40 41 |
# File 'lib/srt_validator/line.rb', line 39 def webvtt_time_str time_str(".") end |