From 145f32ad8516f9654bdc469096c65549354829ab Mon Sep 17 00:00:00 2001 From: Sammy Larbi Date: Tue, 14 Jul 2015 17:17:15 -0500 Subject: Use a specific exception for unsupported visits --- lib/arel/visitors/to_sql.rb | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) (limited to 'lib/arel/visitors/to_sql.rb') diff --git a/lib/arel/visitors/to_sql.rb b/lib/arel/visitors/to_sql.rb index 63097a2399..ce1fdf80ce 100644 --- a/lib/arel/visitors/to_sql.rb +++ b/lib/arel/visitors/to_sql.rb @@ -4,6 +4,12 @@ require 'arel/visitors/reduce' module Arel module Visitors + class UnsupportedVisitError < StandardError + def initialize(object) + super "Unsupported argument type: #{object.class.name}. Construct an Arel node instead." + end + end + class ToSql < Arel::Visitors::Reduce ## # This is some roflscale crazy stuff. I'm roflscaling this because @@ -737,7 +743,7 @@ module Arel end def unsupported o, collector - raise "unsupported argument type: #{o.class.name}. Construct an Arel node instead." + raise UnsupportedVisitError.new(o) end alias :visit_ActiveSupport_Multibyte_Chars :unsupported -- cgit v1.2.3