Add getXPathNodeName to the Node interface

A default implementation is available in AbstractNode
to preserve compatibility with the previous way, which
used Object.toString.

Fixes #569
This commit is contained in:
Clément Fournier
2018-01-24 16:52:42 +01:00
parent 0fb9c4678c
commit 3c0bb45a60
29 changed files with 124 additions and 28 deletions

View File

@ -64,6 +64,12 @@ public abstract class AbstractPLSQLNode extends net.sourceforge.pmd.lang.ast.Abs
return data;
}
@Override
public String getXPathNodeName() {
return PLSQLParserTreeConstants.jjtNodeName[id];
}
/*
* You can override these two methods in subclasses of SimpleNode to
* customize the way the node appears when the tree is dumped. If your
@ -72,7 +78,7 @@ public abstract class AbstractPLSQLNode extends net.sourceforge.pmd.lang.ast.Abs
*/
public String toString() {
return PLSQLParserTreeConstants.jjtNodeName[id];
return getXPathNodeName();
}
public String toString(String prefix) {

View File

@ -45,7 +45,7 @@ public class DumpFacade extends PLSQLParserVisitorAdapter {
writer.print(prefix);
// 2) JJT Name of the Node
writer.print(node.toString());
writer.print(node.getXPathNodeName());
//
// If there are any additional details, then: