Class: Csvtool::Interface::CLI::Output::ColorPolicy

Inherits:
Object
  • Object
show all
Defined in:
lib/csvtool/interface/cli/output/color_policy.rb

Instance Method Summary collapse

Constructor Details

#initialize(mode:, io:, env: ENV) ⇒ ColorPolicy

Returns a new instance of ColorPolicy.



8
9
10
11
12
# File 'lib/csvtool/interface/cli/output/color_policy.rb', line 8

def initialize(mode:, io:, env: ENV)
  @mode = mode
  @io = io
  @env = env
end

Instance Method Details

#enabled?Boolean

Returns:

  • (Boolean)


14
15
16
17
18
19
20
# File 'lib/csvtool/interface/cli/output/color_policy.rb', line 14

def enabled?
  return true if @mode == "always"
  return false if @mode == "never"
  return false if @env["NO_COLOR"]

  @io.respond_to?(:tty?) && @io.tty?
end