aboutsummaryrefslogtreecommitdiffstats
path: root/lib/arel/algebra/ordering.rb
diff options
context:
space:
mode:
Diffstat (limited to 'lib/arel/algebra/ordering.rb')
-rw-r--r--lib/arel/algebra/ordering.rb31
1 files changed, 0 insertions, 31 deletions
diff --git a/lib/arel/algebra/ordering.rb b/lib/arel/algebra/ordering.rb
deleted file mode 100644
index c1a4ef8b70..0000000000
--- a/lib/arel/algebra/ordering.rb
+++ /dev/null
@@ -1,31 +0,0 @@
-module Arel
- class Ordering < Struct.new(:attribute)
- delegate :relation, :to => :attribute
-
- def bind(relation)
- self.class.new(attribute.bind(relation))
- end
-
- def to_ordering
- self
- end
-
- def eval(row1, row2)
- (attribute.eval(row1) <=> attribute.eval(row2)) * direction
- end
-
- def to_sql(formatter = Sql::OrderClause.new(relation))
- formatter.ordering self
- end
- end
-
- class Ascending < Ordering
- def direction; 1 end
- def direction_sql; 'ASC' end
- end
-
- class Descending < Ordering
- def direction_sql; 'DESC' end
- def direction; -1 end
- end
-end