1
0
Fork 0
mirror of https://github.com/haml/haml.git synced 2022-11-09 12:33:31 -05:00

Get rid of Haml::HamlError.

It makes more sense to just raise Haml::Error.
This commit is contained in:
Nathan Weizenbaum 2008-04-19 10:07:40 -07:00
parent 8ed3ddeb81
commit 6cbd49d5f5
5 changed files with 12 additions and 16 deletions

View file

@ -1,5 +1,5 @@
module Haml
# The abstract type of exception raised by Haml code.
# An exception raised by Haml code.
class Error < StandardError
# :stopdoc:
@ -20,8 +20,4 @@ module Haml
# ill-formatted document.
# It's not particularly interesting, except in that it includes Haml::Error.
class SyntaxError < Haml::Error; end
# HamlError is the type of exception raised when Haml encounters an error
# not of a syntactical nature, such as an undefined Filter.
class HamlError < Haml::Error; end
end

View file

@ -250,7 +250,7 @@ END
case e
when ::Haml::SyntaxError; raise "Syntax error on line #{get_line e}: #{e.message}"
when ::Haml::HamlError; raise "Haml error on line #{get_line e}: #{e.message}"
when ::Haml::Error; raise "Haml error on line #{get_line e}: #{e.message}"
else raise "Exception on line #{get_line e}: #{e.message}\n Use --trace for backtrace."
end
end

View file

@ -38,7 +38,7 @@ module Haml
# to render text with the given filter.
# If compile is overridden, however, render doesn't need to be.
def render(text)
raise HamlError.new("#{self.inspect}#render not defined!")
raise Error.new("#{self.inspect}#render not defined!")
end
def internal_compile(*args) # :nodoc:
@ -118,9 +118,9 @@ module Haml
classname = self.class.to_s.gsub(/\w+::/, '')
if @lazy_requires.size == 1
raise HamlError.new("Can't run #{classname} filter; required file '#{@lazy_requires.first}' not found")
raise Error.new("Can't run #{classname} filter; required file '#{@lazy_requires.first}' not found")
else
raise HamlError.new("Can't run #{classname} filter; required #{@lazy_requires.map { |r| "'#{r}'" }.join(' or ')}, but none were found")
raise Error.new("Can't run #{classname} filter; required #{@lazy_requires.map { |r| "'#{r}'" }.join(' or ')}, but none were found")
end
end
end

View file

@ -669,13 +669,13 @@ END
# Starts a filtered block.
def start_filtered(name)
raise HamlError.new("Invalid filter name \":#{name}\".") unless name =~ /^\w+$/
raise Error.new("Invalid filter name \":#{name}\".") unless name =~ /^\w+$/
unless filter = options[:filters][name]
if filter == 'redcloth' || filter == 'markdown' || filter == 'textile'
raise HamlError.new("You must have the RedCloth gem installed to use \"#{name}\" filter")
raise Error.new("You must have the RedCloth gem installed to use \"#{name}\" filter")
end
raise HamlError.new("Filter \"#{name}\" is not defined.")
raise Error.new("Filter \"#{name}\" is not defined.")
end
push_and_tabulate([:filtered, filter])

View file

@ -229,7 +229,7 @@ END
begin
assert_equal("", render(":ruby\n puts 'hello'", :suppress_eval => true))
rescue Haml::HamlError => err
rescue Haml::Error => err
caught = true
assert_equal('Filter "ruby" is not defined.', err.message)
end
@ -385,7 +385,7 @@ END
begin
assert_equal("<h1>Foo</h1>\t<p>- a\n- b</p>\n",
Haml::Engine.new(":markdown\n Foo\n ===\n - a\n - b").to_html)
rescue Haml::HamlError => e
rescue Haml::Error => e
if e.message == "Can't run Markdown filter; required 'bluecloth' or 'redcloth', but none were found"
puts "\nCouldn't require 'bluecloth' or 'redcloth'; skipping a test."
else
@ -410,7 +410,7 @@ END
begin
Haml::Engine.new(":redcloth\n _foo_").to_html
rescue Haml::HamlError
rescue Haml::Error
else
assert(false, "No exception raised!")
end
@ -432,7 +432,7 @@ END
begin
Haml::Engine.new(":markdown\n _foo_").to_html
rescue Haml::HamlError
rescue Haml::Error
else
assert(false, "No exception raised!")
end