public override ITokenStream GetAntlrTokenStream(TextReader reader) { MSSQLLexer lexer = new MSSQLLexer(new ANTLRReaderStream(reader)); CommonTokenStream tokens = new CommonTokenStream(lexer); return(tokens); }
public override List <DependencyItem> DetectDependencies(ISpecificObjectStructure spec) { if (spec.CreateSql == null) { return(new List <DependencyItem>()); } var dc = new DepsCollector(); MSSQLLexer lexer = new MSSQLLexer(new ANTLRReaderStream(new StringReader(spec.CreateSql))); CommonTokenStream tokens = new CommonTokenStream(lexer); MSSQLParser parser = new MSSQLParser(tokens); parser.find_deps(dc); if (parser.Errors != null) { var err = new InternalError("DAE-00002 Error parsing dependencies:" + parser.Errors); err.Data["sql"] = spec.CreateSql; throw err; } return(spec.BuildDependencyList(dc)); }