Sha256: 3722fa10fc2cb08fd3d61b901e6a4a3a582508e71ded8a2816f117de6cbaf1de

Contents?: true

Size: 574 Bytes

Versions: 20

Compression:

Stored size: 574 Bytes

Contents

module CloudSesame
  module Query
    module AST
      class FieldArray < Array
        include DSL::FieldArrayMethods

        attr_accessor :dsl_return
        attr_reader :field, :dsl_scope, :dsl_context

        def field=(field)
          parents.clear
          @field = field
        end

        def parents
          @parents ||= []
        end

        def dsl_scope=(dsl_scope)
          @dsl_context = dsl_scope.context
          @dsl_scope = dsl_scope
        end

        def compile
          map(&:compile).join(' ')
        end

      end
    end
  end
end

Version data entries

20 entries across 20 versions & 1 rubygems

Version Path
CloudSesame-0.4.6 lib/cloud_sesame/query/ast/field_array.rb
CloudSesame-0.4.5 lib/cloud_sesame/query/ast/field_array.rb
CloudSesame-0.4.4 lib/cloud_sesame/query/ast/field_array.rb
CloudSesame-0.4.3 lib/cloud_sesame/query/ast/field_array.rb
CloudSesame-0.4.2 lib/cloud_sesame/query/ast/field_array.rb
CloudSesame-0.4.1 lib/cloud_sesame/query/ast/field_array.rb
CloudSesame-0.4.0 lib/cloud_sesame/query/ast/field_array.rb
CloudSesame-0.3.6 lib/cloud_sesame/query/ast/field_array.rb
CloudSesame-0.3.5 lib/cloud_sesame/query/ast/field_array.rb
CloudSesame-0.3.4 lib/cloud_sesame/query/ast/field_array.rb
CloudSesame-0.3.3 lib/cloud_sesame/query/ast/field_array.rb
CloudSesame-0.3.2 lib/cloud_sesame/query/ast/field_array.rb
CloudSesame-0.3.1 lib/cloud_sesame/query/ast/field_array.rb
CloudSesame-0.3.0 lib/cloud_sesame/query/ast/field_array.rb
CloudSesame-0.2.5 lib/cloud_sesame/query/ast/field_array.rb
CloudSesame-0.2.4 lib/cloud_sesame/query/ast/field_array.rb
CloudSesame-0.2.3 lib/cloud_sesame/query/ast/field_array.rb
CloudSesame-0.2.2 lib/cloud_sesame/query/ast/field_array.rb
CloudSesame-0.2.1 lib/cloud_sesame/query/ast/field_array.rb
CloudSesame-0.2.0 lib/cloud_sesame/query/ast/field_array.rb