Class: AVR::Clock::Sink
Instance Method Summary collapse
-
#initialize(name = nil, sink_proc = nil, &block) ⇒ Sink
constructor
A new instance of Sink.
- #tick(source, ticks) ⇒ Object
Constructor Details
#initialize(name = nil, sink_proc = nil, &block) ⇒ Sink
Returns a new instance of Sink.
18 19 20 21 22 23 24 25 |
# File 'lib/avr/clock.rb', line 18 def initialize(name = nil, sink_proc = nil, &block) raise unless sink_proc || block_given? @name = name @sink_proc = T.let( sink_proc || block&.to_proc, T.nilable(T.proc.params(source: Clock, ticks: Integer).void) ) end |
Instance Method Details
#tick(source, ticks) ⇒ Object
28 29 30 |
# File 'lib/avr/clock.rb', line 28 def tick(source, ticks) T.must(@sink_proc).call(source, ticks) end |