class Scheman::Parsers::Mysql::ParsletParser

Public Instance Methods

back_quoted(value) click to toggle source
# File lib/scheman/parsers/mysql.rb, line 55
def back_quoted(value)
  str("`") >> value >> str("`")
end
case_insensitive_str(str) click to toggle source

@return [Parslet::Atoms::Sequence] Case-insensitive pattern from a given string

# File lib/scheman/parsers/mysql.rb, line 30
def case_insensitive_str(str)
  str.each_char.map {|char| match[char.downcase + char.upcase] }.reduce(:>>)
end
comma_separated(value) click to toggle source
# File lib/scheman/parsers/mysql.rb, line 63
def comma_separated(value)
  value >> (str(",") >> spaces? >> value).repeat
end
double_quoted(value) click to toggle source
# File lib/scheman/parsers/mysql.rb, line 51
def double_quoted(value)
  str('"') >> value >> str('"')
end
non(sequence) click to toggle source

@return [Parslet::Atoms::Repetation]

# File lib/scheman/parsers/mysql.rb, line 35
def non(sequence)
  (sequence.absent? >> any).repeat
end
parenthetical(value) click to toggle source
# File lib/scheman/parsers/mysql.rb, line 59
def parenthetical(value)
  str("(") >> spaces? >> value >> spaces? >> str(")")
end
quoted(value) click to toggle source
# File lib/scheman/parsers/mysql.rb, line 39
def quoted(value)
  single_quoted(value) | double_quoted(value) | back_quoted(value)
end
quoted_string() click to toggle source
# File lib/scheman/parsers/mysql.rb, line 43
def quoted_string
  single_quoted(non(str("'"))) | double_quoted(non(str('"'))) | back_quoted(non(str("`")))
end
single_quoted(value) click to toggle source
# File lib/scheman/parsers/mysql.rb, line 47
def single_quoted(value)
  str("'") >> value >> str("'")
end