Sha256: acc21321a425414a6b27e1d882feb507a37816ac2c3d89ae35750373782157b8

Contents?: true

Size: 565 Bytes

Versions: 3

Compression:

Stored size: 565 Bytes

Contents

module AQL
  class Node
    class Operator
      # Ternary operator
      class Ternary < self
        include Concord.new(:condition, :left, :right)

        SYMBOL = :'?'

      private

        # Emit node
        #
        # @param [Buffer] buffer
        #
        # @return [undefined]
        #
        # @api private
        #
        def emit(buffer)
          condition.visit(buffer)
          buffer.append(" #{operator} ")
          left.visit(buffer)
          buffer.append(' : ')
          right.visit(buffer)
        end
      end
    end
  end
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
aql-0.0.3 lib/aql/node/operator/ternary.rb
aql-0.0.2 lib/aql/node/operator/ternary.rb
aql-0.0.1 lib/aql/node/operator/ternary.rb