Class: Bonito::ParallelTimeline

Inherits:
Timeline
  • Object
show all
Defined in:
lib/bonito/parallel_timeline.rb

Overview

:nodoc:

Instance Attribute Summary

Attributes inherited from Timeline

#duration

Instance Method Summary collapse

Methods inherited from Timeline

#each, schedule_with, #scheduler, #size

Constructor Details

#initialize(&block) ⇒ ParallelTimeline

Returns a new instance of ParallelTimeline.



25
26
27
28
# File 'lib/bonito/parallel_timeline.rb', line 25

def initialize(&block)
  super 0
  instance_eval(&block) if block_given?
end

Instance Method Details

#also(over: duration, after: 0, &block) ⇒ Object



34
35
36
# File 'lib/bonito/parallel_timeline.rb', line 34

def also(over: duration, after: 0, &block)
  over(over, after: after, &block)
end

#over(duration, after: 0, &block) ⇒ Object



30
31
32
# File 'lib/bonito/parallel_timeline.rb', line 30

def over(duration, after: 0, &block)
  use Bonito::SerialTimeline.new(duration, &block), after: after
end

#repeat(times:, over:, after: 0, &block) ⇒ Object



45
46
47
48
# File 'lib/bonito/parallel_timeline.rb', line 45

def repeat(times:, over:, after: 0, &block)
  times.times { over(over, after: after, &block) }
  self
end

#use(*timelines, after: 0) ⇒ Object



38
39
40
41
42
43
# File 'lib/bonito/parallel_timeline.rb', line 38

def use(*timelines, after: 0)
  timelines.each do |timeline|
    send :<<, OffsetTimeline.new(timeline, after)
  end
  self
end