class OracleSqlParser::Ast::Array

Public Class Methods

[](*values) click to toggle source
# File lib/oracle-sql-parser/ast/array.rb, line 15
def self.[](*values)
  self.new(*values)
end
new(*args) click to toggle source
# File lib/oracle-sql-parser/ast/array.rb, line 28
def initialize(*args)
  @ast = args
end

Public Instance Methods

[](index) click to toggle source
# File lib/oracle-sql-parser/ast/array.rb, line 11
def [](index)
  @ast[index]
end
each(&block) click to toggle source
# File lib/oracle-sql-parser/ast/array.rb, line 7
def each(&block)
  @ast.each(&block)
end
inspect() click to toggle source
# File lib/oracle-sql-parser/ast/array.rb, line 48
def inspect
  "#<#{self.class.name} [\n" + 
  @ast.map{|v| "#{v.inspect}"}.join(",\n").gsub(/^/, '  ') +
  "\n]>\n"
end
map_ast!(&block) click to toggle source
# File lib/oracle-sql-parser/ast/array.rb, line 19
def map_ast!(&block)
  @ast = @ast.map do |v|
    if v.is_a? OracleSqlParser::Ast::Base
      v.map_ast!(&block)
    end
    block.call(v)
  end
end
remove_nil_values!() click to toggle source
# File lib/oracle-sql-parser/ast/array.rb, line 42
def remove_nil_values!
  @ast.delete_if{|v| v.nil?}
  @ast.each {|v| v.remove_nil_values! if v.respond_to? :remove_nil_values!}
  self
end
to_sql(options = {:separator => ' '}) click to toggle source
# File lib/oracle-sql-parser/ast/array.rb, line 32
def to_sql(options = {:separator => ' '})
  @ast.map do |v|
    if v.respond_to? :to_sql
      v.to_sql
    else
      v.to_s
    end
  end.compact.join(options[:separator])
end