From 30fb25d3abfc002b85f290587b979d54c35a2e98 Mon Sep 17 00:00:00 2001
From: Carl Lerche <carllerche@mac.com>
Date: Mon, 22 Mar 2010 16:26:00 -0700
Subject: Switch Arel::Relation to a module. This will allow for classes with
 Relation extended on them to represent relations themselves (as opposed to
 their instances being relations).

---
 lib/arel/engines/sql/relations/operations/join.rb    | 2 +-
 lib/arel/engines/sql/relations/relation.rb           | 2 +-
 lib/arel/engines/sql/relations/table.rb              | 4 ++--
 lib/arel/engines/sql/relations/utilities/compound.rb | 2 +-
 lib/arel/engines/sql/relations/utilities/nil.rb      | 2 +-
 5 files changed, 6 insertions(+), 6 deletions(-)

(limited to 'lib/arel/engines/sql')

diff --git a/lib/arel/engines/sql/relations/operations/join.rb b/lib/arel/engines/sql/relations/operations/join.rb
index a3aaaa163b..7fad6400ad 100644
--- a/lib/arel/engines/sql/relations/operations/join.rb
+++ b/lib/arel/engines/sql/relations/operations/join.rb
@@ -1,5 +1,5 @@
 module Arel
-  class Join < Relation
+  class Join
     def table_sql(formatter = Sql::TableReference.new(self))
       relation1.externalize.table_sql(formatter)
     end
diff --git a/lib/arel/engines/sql/relations/relation.rb b/lib/arel/engines/sql/relations/relation.rb
index 5e8fc2e83e..f372589af1 100644
--- a/lib/arel/engines/sql/relations/relation.rb
+++ b/lib/arel/engines/sql/relations/relation.rb
@@ -1,5 +1,5 @@
 module Arel
-  class Relation
+  module Relation
     @@connection_tables_primary_keys = {}
 
     def compiler
diff --git a/lib/arel/engines/sql/relations/table.rb b/lib/arel/engines/sql/relations/table.rb
index aa70eaaa28..8ee7a94357 100644
--- a/lib/arel/engines/sql/relations/table.rb
+++ b/lib/arel/engines/sql/relations/table.rb
@@ -1,6 +1,6 @@
 module Arel
-  class Table < Relation
-    include Recursion::BaseCase
+  class Table
+    include Relation, Recursion::BaseCase
 
     cattr_accessor :engine, :tables
     attr_reader :name, :engine, :table_alias, :options
diff --git a/lib/arel/engines/sql/relations/utilities/compound.rb b/lib/arel/engines/sql/relations/utilities/compound.rb
index b8b0e7d269..55853be742 100644
--- a/lib/arel/engines/sql/relations/utilities/compound.rb
+++ b/lib/arel/engines/sql/relations/utilities/compound.rb
@@ -1,5 +1,5 @@
 module Arel
-  class Compound < Relation
+  class Compound
     delegate :table, :table_sql, :to => :relation
 
     def build_query(*parts)
diff --git a/lib/arel/engines/sql/relations/utilities/nil.rb b/lib/arel/engines/sql/relations/utilities/nil.rb
index 519ea8acf1..0f7ca5d757 100644
--- a/lib/arel/engines/sql/relations/utilities/nil.rb
+++ b/lib/arel/engines/sql/relations/utilities/nil.rb
@@ -1,5 +1,5 @@
 module Arel
-  class Nil < Relation
+  class Nil
     def table_sql(formatter = nil); '' end
     def name; '' end
   end
-- 
cgit v1.2.3