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