class Riffer::Rig::Terminal::QuietDisplay
Public Class Methods
(io: IO, theme: Riffer::Rig::Terminal::Theme, clock: ^() → Float) → void
Source
# File lib/riffer/rig/terminal/quiet_display.rb, line 13 def initialize(io:, theme:, clock:) @io = io @theme = theme @clock = clock @buffer = nil end
@rbs io: IO @rbs theme: Riffer::Rig::Terminal::Theme @rbs clock: ^() -> Float @rbs return: void
Public Instance Methods
(::Riffer::StreamEvents::Base | Riffer::Rig::Events::_Event event) → void
Source
# File lib/riffer/rig/terminal/quiet_display.rb, line 28 def absorb(event) @buffer&.absorb(event) end
@rbs event: ::Riffer::StreamEvents::Base | Riffer::Rig::Events::_Event @rbs return: void
(Riffer::Rig::Runtime runtime) → void
Source
# File lib/riffer/rig/terminal/quiet_display.rb, line 34 def cancel(runtime) runtime.cancel end
@rbs runtime: Riffer::Rig::Runtime @rbs return: void
(Riffer::Rig::Runtime runtime) → void
Source
# File lib/riffer/rig/terminal/quiet_display.rb, line 40 def finish(runtime) buffer = @buffer return unless buffer&.ended? width = Riffer::Rig::Terminal::Frame.measure(@io)&.last @io.print(Riffer::Rig::Terminal::TurnReport.call(buffer, runtime.tally, theme: @theme, width: width)) @io.flush end
@rbs runtime: Riffer::Rig::Runtime @rbs return: void
(Riffer::Rig::Runtime runtime) → void
Source
# File lib/riffer/rig/terminal/quiet_display.rb, line 22 def start(runtime) # rubocop:disable Lint/UnusedMethodArgument -- the display contract's parameter, which rbs-inline leaves untyped once it is `_`-prefixed @buffer = Riffer::Rig::Terminal::TurnBuffer.new(clock: @clock) end
@rbs runtime: Riffer::Rig::Runtime @rbs return: void