diff options
Diffstat (limited to 'lib/arel/algebra/ordering.rb')
-rw-r--r-- | lib/arel/algebra/ordering.rb | 31 |
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 |