class Locomotive::Steam::TemplateError

Constants

LINES_RANGE

Attributes

original_backtrace[RW]
source[RW]

Public Class Methods

new(message, template_name, source, line_number, original_backtrace) click to toggle source
Calls superclass method
# File lib/locomotive/steam/errors.rb, line 27
def initialize(message, template_name, source, line_number, original_backtrace)
  super(message)
  self.template_name      = template_name
  self.line_number        = line_number
  self.source             = source
  self.original_backtrace = original_backtrace
end

Public Instance Methods

backtrace() click to toggle source
# File lib/locomotive/steam/errors.rb, line 47
def backtrace
  original_backtrace
end
code_lines() click to toggle source
# File lib/locomotive/steam/errors.rb, line 35
def code_lines
  return [] if source.blank? || line_number.nil?

  lines = source.split("\n")

  start   = line_number - (LINES_RANGE / 2)
  start   = 1 if start <= 0
  finish  = line_number + (LINES_RANGE / 2)

  (start..finish).map { |i| [i, lines[i - 1]] }
end

Private Instance Methods

message_prefix() click to toggle source
# File lib/locomotive/steam/errors.rb, line 53
def message_prefix
  ""
  # "Liquid parsing error - "
end