class LDLgeneratedLanguage::Language_gds_check
Constants
- GrammarDef
Public Class Methods
parse( s )
click to toggle source
# File lib/gds-data-validation/lng_gds_check.rb, line 11 def self.parse( s ) @parserClass ||= begin Treetop.load_from_string GrammarDef instance_eval( 'Language_gds_check_05Parser' ) end parser = @parserClass.new parseTree = parser.parse( s + "\n" ) unless parseTree lineOfFailure = parser.failure_line columnOfFailure = parser.failure_column s = "LANGUAGE_GDS_CHECK: Error happend, while parsing the definition: line #{lineOfFailure}, column #{columnOfFailure}" + "\n" s += parser.failure_reason + "\n" if parser.failure_reason s += "--->" + "\n" s += parser.input.lines[((lineOfFailure-1-5)>0 ? (lineOfFailure-1-5) : 0)..(lineOfFailure-1)].join.chomp + "\n" s += ' '*((parser.failure_column) -1) + '^' + "\n" s += "<---" + "\n" raise SyntaxError, s end parseTree.ast end