Skip to content

Commit

Permalink
apacheGH-1328: Update SSE parser to javacc 7.0
Browse files Browse the repository at this point in the history
  • Loading branch information
afs committed May 19, 2022
1 parent 324c4e6 commit 43ba81d
Show file tree
Hide file tree
Showing 7 changed files with 282 additions and 256 deletions.
54 changes: 6 additions & 48 deletions jena-arq/Grammar/sse/grammar-sse
Original file line number Diff line number Diff line change
Expand Up @@ -43,55 +43,13 @@ function grammar
echo "---- Create text form"
jjdoc -TEXT=true -OUTPUT_FILE=${FILE%%.jj}.txt "${FILE}"

# Fix unnecessary imports
echo "---- Fixing Java warnings in ${CLASS}TokenManager ..."
F="$DIR/${CLASS}TokenManager.java"
sed -e 's/@SuppressWarnings."unused".//' \
-e 's/import .*//' -e 's/MatchLoop: do/do/' \
-e 's/int hiByte = (int)(curChar/int hiByte = (curChar/' \
< $F > F
mv F $F

## # Java5+ fixups
## echo "---- Fixing Java warnings in JavaCharStream ..."
## # Deprecated:
## # public int getColumn()
## # public int getLine()
## F="$DIR/JavaCharStream.java"
## if [ -e "$F" ]
## then
## sed -e 's/@Deprecated //' \
## -e 's/public int getColumn/@Deprecated public int getColumn/' \
## -e 's/public int getLine/@Deprecated public int getLine/' < $F > F
## mv F $F
## fi
##
echo "---- Fixing Java warnings in ParseException ..."
#Override:
# public String getMessage()
F="$DIR/ParseException.java"
sed -e 's/@Override //' \
-e 's/public String getMessage/@Override public String getMessage/' < $F > F
mv F $F

echo "---- Fixing Java warnings in Token ..."
F="$DIR/Token.java"
sed -e 's/@Override //' \
-e 's/public String toString/@Override public String toString/' < $F > F
mv F $F

echo "---- Fixing Java warnings in TokenMgrError ..."
# Override:
# public String getMessage()
echo "---- Fixing Java warnings in TokenMgrError"
F="$DIR/TokenMgrError.java"
sed -e 's/@Override //' \
-e 's/public String getMessage/@Override public String getMessage/' < $F > F
mv F $F

echo "---- Fixing Java warnings in ${CLASS} ..."
F="$DIR/${CLASS}.java"
sed -e 's/public class /\n@SuppressWarnings("all")\npublic class /' < $F > F
mv F $F
if [ -e "$F" ]
then
sed -e 's/public class TokenMgrError/\n@SuppressWarnings("all")\npublic class TokenMgrError/' < $F > F
mv F $F
fi

echo "---- Done"
}
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
/* Generated By:JavaCC: Do not edit this line. ParseException.java Version 6.0 */
/* JavaCCOptions:KEEP_LINE_COL=null */
/* Generated By:JavaCC: Do not edit this line. ParseException.java Version 7.0 */
/* JavaCCOptions:KEEP_LINE_COLUMN=true */
package org.apache.jena.sparql.sse.lang.parser ;

/**
Expand All @@ -20,6 +20,11 @@ public class ParseException extends Exception {
*/
private static final long serialVersionUID = 1L;

/**
* The end of line string for this machine.
*/
protected static String EOL = System.getProperty("line.separator", "\n");

/**
* This constructor is used by the method "generateParseException"
* in the generated parser. Calling this constructor generates
Expand Down Expand Up @@ -60,7 +65,7 @@ public ParseException(String message) {
/**
* This is the last token that has been consumed successfully. If
* this object has been created due to a parse error, the token
* followng this token will (therefore) be the first error token.
* following this token will (therefore) be the first error token.
*/
public Token currentToken;

Expand Down Expand Up @@ -88,8 +93,8 @@ public ParseException(String message) {
private static String initialise(Token currentToken,
int[][] expectedTokenSequences,
String[] tokenImage) {
String eol = System.getProperty("line.separator", "\n");
StringBuffer expected = new StringBuffer();

StringBuilder expected = new StringBuilder();
int maxSize = 0;
for (int i = 0; i < expectedTokenSequences.length; i++) {
if (maxSize < expectedTokenSequences[i].length) {
Expand All @@ -101,7 +106,7 @@ private static String initialise(Token currentToken,
if (expectedTokenSequences[i][expectedTokenSequences[i].length - 1] != 0) {
expected.append("...");
}
expected.append(eol).append(" ");
expected.append(EOL).append(" ");
}
String retval = "Encountered \"";
Token tok = currentToken.next;
Expand All @@ -117,35 +122,38 @@ private static String initialise(Token currentToken,
retval += " \"";
tok = tok.next;
}
retval += "\" at line " + currentToken.next.beginLine + ", column " + currentToken.next.beginColumn;
retval += "." + eol;
if (expectedTokenSequences.length == 1) {
retval += "Was expecting:" + eol + " ";
if (currentToken.next != null) {
retval += "\" at line " + currentToken.next.beginLine + ", column " + currentToken.next.beginColumn;
}
retval += "." + EOL;


if (expectedTokenSequences.length == 0) {
// Nothing to add here
} else {
retval += "Was expecting one of:" + eol + " ";
if (expectedTokenSequences.length == 1) {
retval += "Was expecting:" + EOL + " ";
} else {
retval += "Was expecting one of:" + EOL + " ";
}
retval += expected.toString();
}
retval += expected.toString();

return retval;
}

/**
* The end of line string for this machine.
*/
protected String eol = System.getProperty("line.separator", "\n");

/**
* Used to convert raw characters to their escaped version
* when these raw version cannot be used as part of an ASCII
* string literal.
*/
static String add_escapes(String str) {
StringBuffer retval = new StringBuffer();
StringBuilder retval = new StringBuilder();
char ch;
for (int i = 0; i < str.length(); i++) {
switch (str.charAt(i))
{
case 0 :
continue;
case '\b':
retval.append("\\b");
continue;
Expand Down Expand Up @@ -184,4 +192,4 @@ static String add_escapes(String str) {
}

}
/* JavaCC - OriginalChecksum=b38e7f761b08d39ac0a34342c44049b1 (do not edit this line) */
/* JavaCC - OriginalChecksum=1c33541c7f28d99fc8b49129ce8966cd (do not edit this line) */
Loading

0 comments on commit 43ba81d

Please sign in to comment.