class Console::Output::Terminal
def call(subject = nil, *arguments, name: nil, severity: UNKNOWN, event: nil, **options, &block)
def call(subject = nil, *arguments, name: nil, severity: UNKNOWN, event: nil, **options, &block) width = @terminal.width prefix = build_prefix(name || severity.to_s) indent = " " * prefix.size buffer = Buffer.new("#{indent}| ") indent_size = buffer.prefix.size format_subject(severity, prefix, subject, buffer) arguments.each do |argument| format_argument(argument, buffer) end if block_given? if block.arity.zero? format_argument(yield, buffer) else yield(buffer, @terminal) end end if event format_event(event, buffer, width - indent_size) end if options&.any? format_options(options, buffer) end @io.write buffer.string end