# File lib/kwalify/yaml-parser.rb, line 764 def path_linenum(path) return 1 if path.empty? || path == '/' elems = path.split('/') elems.shift if path[0] == ?/ # delete empty string on head last_elem = elems.pop c = @doc # collection elems.each do |elem| if c.is_a?(Array) c = c[elem.to_i] elsif c.is_a?(Hash) c = c[elem] else assert false end end linenums = @linenums_table[c.__id__] if c.is_a?(Array) linenum = linenums[last_elem.to_i] elsif c.is_a?(Hash) linenum = linenums[last_elem] end return linenum end