class ExplainParser::FromTableString

Public Class Methods

new(explain) click to toggle source
# File lib/explain_parser.rb, line 125
def initialize(explain)
  raise ArgumentError unless explain
  @explain = explain
end

Public Instance Methods

keys() click to toggle source
# File lib/explain_parser.rb, line 138
def keys()
  @keys ||= rows[0].chomp.split('|').compact.map(&:strip).reject(&:empty?)
end
lines() click to toggle source
# File lib/explain_parser.rb, line 130
def lines
  @explain.each_line.to_a
end
rows() click to toggle source
# File lib/explain_parser.rb, line 134
def rows
  @rows ||= lines.select{|line| line =~ /\w+/ && line !~ /\d+ row in set/ }
end
values_list() click to toggle source
# File lib/explain_parser.rb, line 142
def values_list()
  rows[1..-1].map{|row| row.chomp.split('|').compact }
end