class RgGen::Core::Utility::ErrorUtility::MessageComposer

Public Instance Methods

compose(error, verbose, backtrace) click to toggle source
# File lib/rggen/core/utility/error_utility.rb, line 8
def compose(error, verbose, backtrace)
  lines = []
  add_basic_info(error, lines)
  add_verbose_info(error, lines) if verbose
  add_backtrace(error, lines) if backtrace
  lines.join("\n")
end

Private Instance Methods

add_backtrace(error, lines) click to toggle source
# File lib/rggen/core/utility/error_utility.rb, line 32
def add_backtrace(error, lines)
  lines << 'backtrace:'
  error.backtrace.each { |trace| lines << "    #{trace}" }
end
add_basic_info(error, lines) click to toggle source
# File lib/rggen/core/utility/error_utility.rb, line 18
def add_basic_info(error, lines)
  lines << "[#{error.class.lastname}] #{error}"
end
add_verbose_info(error, lines) click to toggle source
# File lib/rggen/core/utility/error_utility.rb, line 22
def add_verbose_info(error, lines)
  return unless error.respond_to?(:verbose_info)
  return unless error.verbose_info

  lines << 'verbose information:'
  error
    .verbose_info.lines(chomp: true)
    .each { |info| lines << "    #{info}" }
end