Sha256: 1bf1f014838864c34f9e8644ce53468358827d57cbd775fc7f027d9ae7dd15d3

Contents?: true

Size: 423 Bytes

Versions: 7

Compression:

Stored size: 423 Bytes

Contents

module Arel
  class Externalization < Compound
    attributes :relation
    deriving :initialize, :==

    def wheres
      []
    end

    def attributes
      @attributes ||= relation.attributes.collect { |a| a.to_attribute(self) }
    end
  end

  class Relation
    def externalize
      @externalized ||= externalizable?? Externalization.new(self) : self
    end

    def externalizable?
      false
    end
  end
end

Version data entries

7 entries across 7 versions & 1 rubygems

Version Path
arel-0.3.1 lib/arel/algebra/relations/utilities/externalization.rb
arel-0.3.0 lib/arel/algebra/relations/utilities/externalization.rb
arel-0.2.1 lib/arel/algebra/relations/utilities/externalization.rb
arel-0.2.0 lib/arel/algebra/relations/utilities/externalization.rb
arel-0.2.pre lib/arel/algebra/relations/utilities/externalization.rb
arel-0.1.2 lib/arel/algebra/relations/utilities/externalization.rb
arel-0.1.0 lib/arel/algebra/relations/utilities/externalization.rb