You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@systemml.apache.org by de...@apache.org on 2016/02/19 23:56:20 UTC
[7/7] incubator-systemml git commit: Replace SyntacticErrorListener
with CustomErrorListener, step 2
Replace SyntacticErrorListener with CustomErrorListener, step 2
Stage 2 of the replacement of SyntacticErrorListener with its inner
class CustomErrorListener. In order to retain history, we do this
in two commits: one commit to change the name of the
SyntacticErrorListener class to CustomErrorListener while changing
the inner CustomErrorListener class to a dummy name; a second commit
to move the inner class methods out to the outer class.
Closes #61, Closes #73.
Project: http://git-wip-us.apache.org/repos/asf/incubator-systemml/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-systemml/commit/fafbd535
Tree: http://git-wip-us.apache.org/repos/asf/incubator-systemml/tree/fafbd535
Diff: http://git-wip-us.apache.org/repos/asf/incubator-systemml/diff/fafbd535
Branch: refs/heads/master
Commit: fafbd535d2a88e2afdbbb03c56770ac72ffeb428
Parents: 45d56a5
Author: Mike Dusenberry <mw...@us.ibm.com>
Authored: Fri Feb 19 12:17:13 2016 -0800
Committer: Deron Eriksson <de...@us.ibm.com>
Committed: Fri Feb 19 12:17:13 2016 -0800
----------------------------------------------------------------------
.../parser/common/CommonSyntacticValidator.java | 6 +-
.../parser/common/CustomErrorListener.java | 137 +++++++++----------
.../sysml/parser/dml/DMLParserWrapper.java | 6 +-
.../sysml/parser/dml/DmlSyntacticValidator.java | 4 +-
.../sysml/parser/pydml/PyDMLParserWrapper.java | 4 +-
.../parser/pydml/PydmlSyntacticValidator.java | 4 +-
6 files changed, 78 insertions(+), 83 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-systemml/blob/fafbd535/src/main/java/org/apache/sysml/parser/common/CommonSyntacticValidator.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/apache/sysml/parser/common/CommonSyntacticValidator.java b/src/main/java/org/apache/sysml/parser/common/CommonSyntacticValidator.java
index 4e5d01f..68a586e 100644
--- a/src/main/java/org/apache/sysml/parser/common/CommonSyntacticValidator.java
+++ b/src/main/java/org/apache/sysml/parser/common/CommonSyntacticValidator.java
@@ -51,7 +51,7 @@ import org.apache.sysml.parser.PrintStatement;
import org.apache.sysml.parser.RelationalExpression;
import org.apache.sysml.parser.Statement;
import org.apache.sysml.parser.StringIdentifier;
-import org.apache.sysml.parser.common.CustomErrorListener.CustomErrorListenerInner;
+import org.apache.sysml.parser.common.CustomErrorListener;
import org.apache.sysml.parser.dml.DmlParser.BuiltinFunctionExpressionContext;
import org.apache.sysml.parser.dml.DmlSyntacticValidator;
import org.apache.sysml.parser.pydml.PydmlSyntacticValidator;
@@ -64,12 +64,12 @@ import com.google.common.primitives.Longs;
*/
public abstract class CommonSyntacticValidator {
- protected final CustomErrorListenerInner errorListener;
+ protected final CustomErrorListener errorListener;
protected final String currentFile;
protected String _workingDir = "."; //current working directory
protected HashMap<String,String> argVals = null;
- public CommonSyntacticValidator(CustomErrorListenerInner errorListener, HashMap<String,String> argVals) {
+ public CommonSyntacticValidator(CustomErrorListener errorListener, HashMap<String,String> argVals) {
this.errorListener = errorListener;
currentFile = errorListener.getCurrentFileName();
this.argVals = argVals;
http://git-wip-us.apache.org/repos/asf/incubator-systemml/blob/fafbd535/src/main/java/org/apache/sysml/parser/common/CustomErrorListener.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/apache/sysml/parser/common/CustomErrorListener.java b/src/main/java/org/apache/sysml/parser/common/CustomErrorListener.java
index 74c82c0..ec640c5 100644
--- a/src/main/java/org/apache/sysml/parser/common/CustomErrorListener.java
+++ b/src/main/java/org/apache/sysml/parser/common/CustomErrorListener.java
@@ -26,86 +26,83 @@ import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.apache.sysml.api.DMLScript;
-public class CustomErrorListener {
-
+public class CustomErrorListener extends BaseErrorListener {
+
private static final Log LOG = LogFactory.getLog(DMLScript.class.getName());
-
- public static class CustomErrorListenerInner extends BaseErrorListener {
-
- private boolean atleastOneError = false;
- private String currentFileName = null;
-
- public void setCurrentFileName(String currentFilePath) {
- currentFileName = currentFilePath;
- }
-
- public String getCurrentFileName() {
- return currentFileName;
- }
-
- public void unsetCurrentFileName() {
- currentFileName = null;
- }
- public void validationError(int line, int charPositionInLine, String msg) {
- try {
- setAtleastOneError(true);
- // Print error messages with file name
- if(currentFileName == null) {
- LOG.error("line "+line+":"+charPositionInLine+" "+msg);
- }
- else {
- String fileName = currentFileName;
- LOG.error(fileName + " line "+line+":"+charPositionInLine+" "+msg);
- }
+ private boolean atleastOneError = false;
+ private String currentFileName = null;
+
+ public void setCurrentFileName(String currentFilePath) {
+ currentFileName = currentFilePath;
+ }
+
+ public String getCurrentFileName() {
+ return currentFileName;
+ }
+
+ public void unsetCurrentFileName() {
+ currentFileName = null;
+ }
+
+ public void validationError(int line, int charPositionInLine, String msg) {
+ try {
+ setAtleastOneError(true);
+ // Print error messages with file name
+ if(currentFileName == null) {
+ LOG.error("line "+line+":"+charPositionInLine+" "+msg);
}
- catch(Exception e1) {
- LOG.error("ERROR: while customizing error message:" + e1);
+ else {
+ String fileName = currentFileName;
+ LOG.error(fileName + " line "+line+":"+charPositionInLine+" "+msg);
}
}
-
- public void validationWarning(int line, int charPositionInLine, String msg) {
- try {
- //atleastOneError = true; ---> not an error, just warning
- // Print error messages with file name
- if(currentFileName == null)
- LOG.warn("line "+line+":"+charPositionInLine+" "+msg);
- else {
- String fileName = currentFileName;
- LOG.warn(fileName + " line "+line+":"+charPositionInLine+" "+msg);
- }
- }
- catch(Exception e1) {
- LOG.warn("ERROR: while customizing error message:" + e1);
- }
+ catch(Exception e1) {
+ LOG.error("ERROR: while customizing error message:" + e1);
}
-
- @Override
- public void syntaxError(Recognizer<?, ?> recognizer, Object offendingSymbol,
- int line, int charPositionInLine,
- String msg, RecognitionException e)
- {
- try {
- setAtleastOneError(true);
- // Print error messages with file name
- if(currentFileName == null)
- LOG.error("line "+line+":"+charPositionInLine+" "+msg);
- else {
- String fileName = currentFileName;
- LOG.error(fileName + " line "+line+":"+charPositionInLine+" "+msg);
- }
- }
- catch(Exception e1) {
- LOG.error("ERROR: while customizing error message:" + e1);
+ }
+
+ public void validationWarning(int line, int charPositionInLine, String msg) {
+ try {
+ //atleastOneError = true; ---> not an error, just warning
+ // Print error messages with file name
+ if(currentFileName == null)
+ LOG.warn("line "+line+":"+charPositionInLine+" "+msg);
+ else {
+ String fileName = currentFileName;
+ LOG.warn(fileName + " line "+line+":"+charPositionInLine+" "+msg);
}
}
-
- public boolean isAtleastOneError() {
- return atleastOneError;
+ catch(Exception e1) {
+ LOG.warn("ERROR: while customizing error message:" + e1);
}
+ }
- public void setAtleastOneError(boolean atleastOneError) {
- this.atleastOneError = atleastOneError;
+ @Override
+ public void syntaxError(Recognizer<?, ?> recognizer, Object offendingSymbol,
+ int line, int charPositionInLine,
+ String msg, RecognitionException e)
+ {
+ try {
+ setAtleastOneError(true);
+ // Print error messages with file name
+ if(currentFileName == null)
+ LOG.error("line "+line+":"+charPositionInLine+" "+msg);
+ else {
+ String fileName = currentFileName;
+ LOG.error(fileName + " line "+line+":"+charPositionInLine+" "+msg);
+ }
+ }
+ catch(Exception e1) {
+ LOG.error("ERROR: while customizing error message:" + e1);
}
}
+
+ public boolean isAtleastOneError() {
+ return atleastOneError;
+ }
+
+ public void setAtleastOneError(boolean atleastOneError) {
+ this.atleastOneError = atleastOneError;
+ }
}
http://git-wip-us.apache.org/repos/asf/incubator-systemml/blob/fafbd535/src/main/java/org/apache/sysml/parser/dml/DMLParserWrapper.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/apache/sysml/parser/dml/DMLParserWrapper.java b/src/main/java/org/apache/sysml/parser/dml/DMLParserWrapper.java
index 6b9a238..fb5fc65 100644
--- a/src/main/java/org/apache/sysml/parser/dml/DMLParserWrapper.java
+++ b/src/main/java/org/apache/sysml/parser/dml/DMLParserWrapper.java
@@ -43,7 +43,7 @@ import org.apache.sysml.parser.FunctionStatementBlock;
import org.apache.sysml.parser.ImportStatement;
import org.apache.sysml.parser.LanguageException;
import org.apache.sysml.parser.ParseException;
-import org.apache.sysml.parser.common.CustomErrorListener.CustomErrorListenerInner;
+import org.apache.sysml.parser.common.CustomErrorListener;
import org.apache.sysml.parser.dml.DmlParser.FunctionStatementContext;
import org.apache.sysml.parser.dml.DmlParser.ProgramrootContext;
import org.apache.sysml.parser.dml.DmlParser.StatementContext;
@@ -125,7 +125,7 @@ public class DMLParserWrapper extends AParserWrapper
}
ProgramrootContext ast = null;
- CustomErrorListenerInner errorListener = new CustomErrorListenerInner();
+ CustomErrorListener errorListener = new CustomErrorListener();
try {
DmlLexer lexer = new DmlLexer(in);
@@ -149,11 +149,9 @@ public class DMLParserWrapper extends AParserWrapper
antlr4Parser.reset();
if(fileName != null) {
errorListener.setCurrentFileName(fileName);
- // CustomErrorListener.currentFileName.push(fileName);
}
else {
errorListener.setCurrentFileName("MAIN_SCRIPT");
- // CustomErrorListener.currentFileName.push("MAIN_SCRIPT");
}
// Set our custom error listener
antlr4Parser.addErrorListener(errorListener);
http://git-wip-us.apache.org/repos/asf/incubator-systemml/blob/fafbd535/src/main/java/org/apache/sysml/parser/dml/DmlSyntacticValidator.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/apache/sysml/parser/dml/DmlSyntacticValidator.java b/src/main/java/org/apache/sysml/parser/dml/DmlSyntacticValidator.java
index f3a297f..02c8b75 100644
--- a/src/main/java/org/apache/sysml/parser/dml/DmlSyntacticValidator.java
+++ b/src/main/java/org/apache/sysml/parser/dml/DmlSyntacticValidator.java
@@ -55,7 +55,7 @@ import org.apache.sysml.parser.Statement;
import org.apache.sysml.parser.StatementBlock;
import org.apache.sysml.parser.WhileStatement;
import org.apache.sysml.parser.common.CommonSyntacticValidator;
-import org.apache.sysml.parser.common.CustomErrorListener.CustomErrorListenerInner;
+import org.apache.sysml.parser.common.CustomErrorListener;
import org.apache.sysml.parser.common.ExpressionInfo;
import org.apache.sysml.parser.common.StatementInfo;
import org.apache.sysml.parser.dml.DmlParser.AddSubExpressionContext;
@@ -110,7 +110,7 @@ import org.apache.sysml.parser.dml.DmlParser.WhileStatementContext;
public class DmlSyntacticValidator extends CommonSyntacticValidator implements DmlListener {
- public DmlSyntacticValidator(CustomErrorListenerInner errorListener, HashMap<String,String> argVals) {
+ public DmlSyntacticValidator(CustomErrorListener errorListener, HashMap<String,String> argVals) {
super(errorListener, argVals);
}
http://git-wip-us.apache.org/repos/asf/incubator-systemml/blob/fafbd535/src/main/java/org/apache/sysml/parser/pydml/PyDMLParserWrapper.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/apache/sysml/parser/pydml/PyDMLParserWrapper.java b/src/main/java/org/apache/sysml/parser/pydml/PyDMLParserWrapper.java
index ad49b44..7090e5d 100644
--- a/src/main/java/org/apache/sysml/parser/pydml/PyDMLParserWrapper.java
+++ b/src/main/java/org/apache/sysml/parser/pydml/PyDMLParserWrapper.java
@@ -44,7 +44,7 @@ import org.apache.sysml.parser.ImportStatement;
import org.apache.sysml.parser.LanguageException;
import org.apache.sysml.parser.ParseException;
import org.apache.sysml.parser.Statement;
-import org.apache.sysml.parser.common.CustomErrorListener.CustomErrorListenerInner;
+import org.apache.sysml.parser.common.CustomErrorListener;
import org.apache.sysml.parser.dml.DMLParserWrapper;
import org.apache.sysml.parser.pydml.PydmlParser.FunctionStatementContext;
import org.apache.sysml.parser.pydml.PydmlParser.ProgramrootContext;
@@ -112,7 +112,7 @@ public class PyDMLParserWrapper extends AParserWrapper
}
ProgramrootContext ast = null;
- CustomErrorListenerInner errorListener = new CustomErrorListenerInner();
+ CustomErrorListener errorListener = new CustomErrorListener();
try {
PydmlLexer lexer = new PydmlLexer(in);
http://git-wip-us.apache.org/repos/asf/incubator-systemml/blob/fafbd535/src/main/java/org/apache/sysml/parser/pydml/PydmlSyntacticValidator.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/apache/sysml/parser/pydml/PydmlSyntacticValidator.java b/src/main/java/org/apache/sysml/parser/pydml/PydmlSyntacticValidator.java
index a2a0995..fd12d53 100644
--- a/src/main/java/org/apache/sysml/parser/pydml/PydmlSyntacticValidator.java
+++ b/src/main/java/org/apache/sysml/parser/pydml/PydmlSyntacticValidator.java
@@ -58,7 +58,7 @@ import org.apache.sysml.parser.StatementBlock;
import org.apache.sysml.parser.StringIdentifier;
import org.apache.sysml.parser.WhileStatement;
import org.apache.sysml.parser.common.CommonSyntacticValidator;
-import org.apache.sysml.parser.common.CustomErrorListener.CustomErrorListenerInner;
+import org.apache.sysml.parser.common.CustomErrorListener;
import org.apache.sysml.parser.common.ExpressionInfo;
import org.apache.sysml.parser.common.StatementInfo;
import org.apache.sysml.parser.dml.DmlParser.MatrixMulExpressionContext;
@@ -118,7 +118,7 @@ import org.apache.sysml.parser.pydml.PydmlParser.WhileStatementContext;
*/
public class PydmlSyntacticValidator extends CommonSyntacticValidator implements PydmlListener {
- public PydmlSyntacticValidator(CustomErrorListenerInner errorListener, HashMap<String,String> argVals) {
+ public PydmlSyntacticValidator(CustomErrorListener errorListener, HashMap<String,String> argVals) {
super(errorListener, argVals);
}