Sha256: 5262420b10ef3e22afc7fa9c22e22312917461a4f41cc19cd644cead5ccbee49

Contents?: true

Size: 695 Bytes

Versions: 3

Compression:

Stored size: 695 Bytes

Contents

module CloudSesame
  module Query
    module AST
      class SingleExpressionOperator < Operator
        include DSL::Base
        include DSL::BlockMethods

        DETAILED = false

        attr_accessor :child

        def is_for(field, field_options)
          child.is_for field, field_options if child
        end

        def is_excluded
          child.is_excluded if child
        end

        def <<(object)
          self.child = object
        end

        def compile(detailed = nil)
          "(#{ symbol  }#{ boost } #{ child.compile operator_detailed })" if child
        end

        def operator_detailed
          self.class::DETAILED
        end

      end
    end
  end
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
CloudSesame-0.4.2 lib/cloud_sesame/query/ast/single_expression_operator.rb
CloudSesame-0.4.1 lib/cloud_sesame/query/ast/single_expression_operator.rb
CloudSesame-0.4.0 lib/cloud_sesame/query/ast/single_expression_operator.rb