Class: Julewire::Core::CLI::Tail

Inherits:
Object
  • Object
show all
Includes:
LineHelpers
Defined in:
lib/julewire/core/cli/tail.rb

Constant Summary collapse

DEFAULT_MAX_VALUE_BYTES =
Serialization::TextEncoder::DEFAULT_MAX_VALUE_BYTES
DEFAULT_POLL_INTERVAL =
0.1
FLAGS =
{
  "--color" => [:color, true],
  "--no-color" => [:color, false],
  "--follow" => [:follow, true],
  "--once" => [:follow, false],
  "--plain" => %i[theme plain],
  "--punk" => %i[theme punk],
  "--skip-invalid" => %i[invalid skip],
  "--raw-invalid" => %i[invalid raw]
}.freeze

Instance Method Summary collapse

Constructor Details

#initialize(argv:, stdin:, stdout:) ⇒ Tail

Returns a new instance of Tail.



22
23
24
25
26
# File 'lib/julewire/core/cli/tail.rb', line 22

def initialize(argv:, stdin:, stdout:)
  @argv = argv
  @stdin = stdin
  @stdout = stdout
end

Instance Method Details

#callObject



28
29
30
31
32
33
# File 'lib/julewire/core/cli/tail.rb', line 28

def call
  options = tail_options
  renderer = tail_renderer(options)
  options.fetch(:path) == "-" ? tail_stdin(options, renderer) : tail_file(options, renderer)
  0
end