aboutsummaryrefslogtreecommitdiffstats
path: root/lib
diff options
context:
space:
mode:
Diffstat (limited to 'lib')
-rw-r--r--lib/arel.rb2
-rw-r--r--lib/arel/errors.rb7
-rw-r--r--lib/arel/select_manager.rb2
-rw-r--r--lib/arel/table.rb2
4 files changed, 11 insertions, 2 deletions
diff --git a/lib/arel.rb b/lib/arel.rb
index e04999ed92..710914a2e3 100644
--- a/lib/arel.rb
+++ b/lib/arel.rb
@@ -1,3 +1,5 @@
+require 'arel/errors'
+
require 'arel/crud'
require 'arel/factory_methods'
diff --git a/lib/arel/errors.rb b/lib/arel/errors.rb
new file mode 100644
index 0000000000..c8a6af9f77
--- /dev/null
+++ b/lib/arel/errors.rb
@@ -0,0 +1,7 @@
+module Arel
+ class ArelError < StandardError
+ end
+
+ class EmptyJoinError < ArelError
+ end
+end
diff --git a/lib/arel/select_manager.rb b/lib/arel/select_manager.rb
index eae3bc8cbc..6af9b6fbe6 100644
--- a/lib/arel/select_manager.rb
+++ b/lib/arel/select_manager.rb
@@ -106,7 +106,7 @@ module Arel
case relation
when String, Nodes::SqlLiteral
- raise if relation.empty?
+ raise EmptyJoinError if relation.empty?
klass = Nodes::StringJoin
end
diff --git a/lib/arel/table.rb b/lib/arel/table.rb
index 3e06f94272..130b7ea028 100644
--- a/lib/arel/table.rb
+++ b/lib/arel/table.rb
@@ -37,7 +37,7 @@ module Arel
case relation
when String, Nodes::SqlLiteral
- raise if relation.empty?
+ raise EmptyJoinError if relation.empty?
klass = Nodes::StringJoin
end