public List <Statement> ParseProcedureStatement(ProcedureSqlStatementContext node) { List <Statement> statements = new List <Statement>(); foreach (var child in node.children) { if (child is SqlStatementContext sqlStatement) { statements.AddRange(this.ParseSqlStatement(sqlStatement)); } else if (child is CompoundStatementContext compoundStatement) { statements.AddRange(this.ParseCompoundStatement(compoundStatement)); } } return(statements); }
private void ParseProcedureStatement(ProcedureSqlStatementContext node) { foreach (var child in node.children) { if (child is SqlStatementContext sqlStatement) { this.ParseSqlStatement(sqlStatement); } else if (child is CompoundStatementContext compoundStatement) { this.ParseCompoundStatement(compoundStatement); } else if (child is TerminalNodeImpl terminalNode) { this.Write(terminalNode.GetText()); } } this.WriteLine(); }