class Riffer::Rig::Tools::Bash::Capture
Constants
- CHUNK_BYTES
Public Class Methods
(IO stream, Integer limit) → void
Source
# File lib/riffer/rig/tools/bash/capture.rb, line 14 def initialize(stream, limit) @stream = stream @limit = limit @buffer = String.new(encoding: Encoding::BINARY) @ended = false end
@rbs stream: IO @rbs limit: Integer @rbs return: void
Public Instance Methods
() → void
Source
# File lib/riffer/rig/tools/bash/capture.rb, line 29 def drain loop { break unless take.is_a?(String) && within_limit? } end
@rbs return: void
() → bool
Source
# File lib/riffer/rig/tools/bash/capture.rb, line 34 def ended? @ended end
@rbs return: bool
(Float timeout) → void
Source
# File lib/riffer/rig/tools/bash/capture.rb, line 23 def read(timeout) @stream.wait_readable(timeout) take end
@rbs timeout: Float @rbs return: void
() → String
Source
# File lib/riffer/rig/tools/bash/capture.rb, line 39 def to_s @buffer.dup.force_encoding(Encoding::UTF_8).scrub end
@rbs return: String