X-Git-Url: http://secure.phpeclipse.com
diff --git a/net.sourceforge.phpeclipse/src/test/PHPParser.jj b/net.sourceforge.phpeclipse/src/test/PHPParser.jj
index 861d2c6..34ee7b7 100644
--- a/net.sourceforge.phpeclipse/src/test/PHPParser.jj
+++ b/net.sourceforge.phpeclipse/src/test/PHPParser.jj
@@ -48,7 +48,7 @@ import net.sourceforge.phpdt.internal.compiler.parser.PHPReqIncDeclaration;
* You can test the parser with the PHPParserTestCase2.java
* @author Matthieu Casanova
*/
-public class PHPParser extends PHPParserSuperclass {
+public final class PHPParser extends PHPParserSuperclass {
private static IFile fileToParse;
@@ -64,18 +64,18 @@ public class PHPParser extends PHPParserSuperclass {
public PHPParser() {
}
- public void setFileToParse(IFile fileToParse) {
+ public final void setFileToParse(final IFile fileToParse) {
this.fileToParse = fileToParse;
}
- public PHPParser(IFile fileToParse) {
+ public PHPParser(final IFile fileToParse) {
this(new StringReader(""));
this.fileToParse = fileToParse;
}
- public void phpParserTester(String strEval) throws CoreException, ParseException {
+ public static final void phpParserTester(final String strEval) throws CoreException, ParseException {
PHPParserTokenManager.SwitchTo(PHPParserTokenManager.PHPPARSING);
- StringReader stream = new StringReader(strEval);
+ final StringReader stream = new StringReader(strEval);
if (jj_input_stream == null) {
jj_input_stream = new SimpleCharStream(stream, 1, 1);
}
@@ -83,8 +83,8 @@ public class PHPParser extends PHPParserSuperclass {
phpTest();
}
- public void htmlParserTester(String strEval) throws CoreException, ParseException {
- StringReader stream = new StringReader(strEval);
+ public static final void htmlParserTester(final String strEval) throws CoreException, ParseException {
+ final StringReader stream = new StringReader(strEval);
if (jj_input_stream == null) {
jj_input_stream = new SimpleCharStream(stream, 1, 1);
}
@@ -92,10 +92,10 @@ public class PHPParser extends PHPParserSuperclass {
phpFile();
}
- public PHPOutlineInfo parseInfo(Object parent, String s) {
+ public final PHPOutlineInfo parseInfo(final Object parent, final String s) {
outlineInfo = new PHPOutlineInfo(parent);
currentSegment = outlineInfo.getDeclarations();
- StringReader stream = new StringReader(s);
+ final StringReader stream = new StringReader(s);
if (jj_input_stream == null) {
jj_input_stream = new SimpleCharStream(stream, 1, 1);
}
@@ -124,10 +124,16 @@ public class PHPParser extends PHPParserSuperclass {
/**
* Create marker for the parse error
+ * @param e the ParseException
*/
- private static void setMarker(ParseException e) {
+ private static void setMarker(final ParseException e) {
try {
- setMarker(fileToParse, errorMessage, jj_input_stream.tokenBegin,jj_input_stream.tokenBegin+e.currentToken.image.length(), errorLevel);
+ setMarker(fileToParse,
+ errorMessage,
+ jj_input_stream.tokenBegin,
+ jj_input_stream.tokenBegin + e.currentToken.image.length(),
+ errorLevel,
+ "Line " + e.currentToken.beginLine);
} catch (CoreException e2) {
PHPeclipsePlugin.log(e2);
}
@@ -136,12 +142,12 @@ public class PHPParser extends PHPParserSuperclass {
/**
* Create markers according to the external parser output
*/
- private static void createMarkers(String output, IFile file) throws CoreException {
+ private static void createMarkers(final String output, final IFile file) throws CoreException {
// delete all markers
file.deleteMarkers(IMarker.PROBLEM, false, 0);
int indx = 0;
- int brIndx = 0;
+ int brIndx;
boolean flag = true;
while ((brIndx = output.indexOf("
", indx)) != -1) {
// newer php error output (tested with 4.2.3)
@@ -158,7 +164,10 @@ public class PHPParser extends PHPParserSuperclass {
}
}
- private static void scanLine(String output, IFile file, int indx, int brIndx) throws CoreException {
+ private static void scanLine(final String output,
+ final IFile file,
+ final int indx,
+ final int brIndx) throws CoreException {
String current;
StringBuffer lineNumberBuffer = new StringBuffer(10);
char ch;
@@ -196,8 +205,12 @@ public class PHPParser extends PHPParserSuperclass {
}
}
- public void parse(String s) throws CoreException {
- ReInit(new StringReader(s));
+ public final void parse(final String s) throws CoreException {
+ final StringReader stream = new StringReader(s);
+ if (jj_input_stream == null) {
+ jj_input_stream = new SimpleCharStream(stream, 1, 1);
+ }
+ ReInit(stream);
try {
parse();
} catch (ParseException e) {
@@ -209,15 +222,15 @@ public class PHPParser extends PHPParserSuperclass {
* Call the php parse command ( php -l -f <filename> )
* and create markers according to the external parser output
*/
- public static void phpExternalParse(IFile file) {
- IPreferenceStore store = PHPeclipsePlugin.getDefault().getPreferenceStore();
- String filename = file.getLocation().toString();
+ public static void phpExternalParse(final IFile file) {
+ final IPreferenceStore store = PHPeclipsePlugin.getDefault().getPreferenceStore();
+ final String filename = file.getLocation().toString();
- String[] arguments = { filename };
- MessageFormat form = new MessageFormat(store.getString(PHPeclipsePlugin.EXTERNAL_PARSER_PREF));
- String command = form.format(arguments);
+ final String[] arguments = { filename };
+ final MessageFormat form = new MessageFormat(store.getString(PHPeclipsePlugin.EXTERNAL_PARSER_PREF));
+ final String command = form.format(arguments);
- String parserResult = PHPStartApacheAction.getParserOutput(command, "External parser: ");
+ final String parserResult = PHPStartApacheAction.getParserOutput(command, "External parser: ");
try {
// parse the buffer to find the errors and warnings
@@ -227,7 +240,7 @@ public class PHPParser extends PHPParserSuperclass {
}
}
- public void parse() throws ParseException {
+ public static final void parse() throws ParseException {
phpFile();
}
}
@@ -236,7 +249,9 @@ PARSER_END(PHPParser)
TOKEN :
{
- : PHPPARSING
+ : PHPPARSING
+| : PHPPARSING
+| : PHPPARSING
}
TOKEN :
@@ -263,7 +278,7 @@ PARSER_END(PHPParser)
/* COMMENTS */
- MORE :
+ SPECIAL_TOKEN :
{
"//" : IN_SINGLE_LINE_COMMENT
|
@@ -272,10 +287,14 @@ PARSER_END(PHPParser)
"/*" : IN_MULTI_LINE_COMMENT
}
-
-SPECIAL_TOKEN :
+ SPECIAL_TOKEN :
+{
+ : PHPPARSING
+}
+
+ SPECIAL_TOKEN :
{
- " > : PHPPARSING
+ " > : DEFAULT
}
@@ -306,68 +325,72 @@ MORE :
|
|
|
+|
}
/* LANGUAGE CONSTRUCT */
TOKEN :
{
-
-|
-|
-|
-|
-|
-|
-|
-| ">
-|
-| ">
+
+|
+|
+|
+|
+|
+|
+|
+| ">
+|
+| ">
}
/* RESERVED WORDS AND LITERALS */
TOKEN :
{
- < BREAK: "break" >
-| < CASE: "case" >
-| < CONST: "const" >
-| < CONTINUE: "continue" >
-| < _DEFAULT: "default" >
-| < DO: "do" >
-| < EXTENDS: "extends" >
-| < FALSE: "false" >
-| < FOR: "for" >
-| < GOTO: "goto" >
-| < NEW: "new" >
-| < NULL: "null" >
-| < RETURN: "return" >
-| < SUPER: "super" >
-| < SWITCH: "switch" >
-| < THIS: "this" >
-| < TRUE: "true" >
-| < WHILE: "while" >
-| < ENDWHILE : "endwhile" >
+
+|
+|
+| <_DEFAULT : "default">
+|
+|
+|
+|
+|
+|
+|
+|
+|
+|
+|
+|
+|
+|
+|
+|
+|
+|
}
/* TYPES */
TOKEN :
{
-
-|