Refactory: smarty.ui plugin.
[phpeclipse.git] / net.sourceforge.phpeclipse / src / net / sourceforge / phpdt / internal / compiler / parser / Parser.java
index 47d1390..02ef8d7 100644 (file)
@@ -48,9 +48,9 @@ import net.sourceforge.phpdt.internal.compiler.lookup.TypeConstants;
 import net.sourceforge.phpdt.internal.compiler.problem.ProblemReporter;
 import net.sourceforge.phpdt.internal.compiler.problem.ProblemSeverities;
 import net.sourceforge.phpdt.internal.compiler.util.Util;
-import net.sourceforge.phpdt.internal.ui.util.PHPFileUtil;
+import net.sourceforge.phpdt.internal.core.util.PHPFileUtil;
 import net.sourceforge.phpeclipse.builder.IdentifierIndexManager;
-import net.sourceforge.phpeclipse.ui.overlaypages.ProjectPrefUtil;
+//import net.sourceforge.phpeclipse.ui.overlaypages.ProjectPrefUtil;
 
 import org.eclipse.core.resources.IFile;
 import org.eclipse.core.resources.IProject;
@@ -2013,7 +2013,7 @@ public class Parser implements ITerminalSymbols, CompilerModifiers,
                        throwSyntaxError("'endif' expected.");
                }
                getNextToken();
-               if (token != TokenNameSEMICOLON) {
+               if (token != TokenNameSEMICOLON && token != TokenNameINLINE_HTML) {
                        reportSyntaxError("';' expected after if-statement.");
                        iState.sourceEnd = scanner.getCurrentTokenStartPosition();
                } else {
@@ -2255,7 +2255,7 @@ public class Parser implements ITerminalSymbols, CompilerModifiers,
                                throwSyntaxError("'endswitch' expected.");
                        }
                        getNextToken();
-                       if (token != TokenNameSEMICOLON) {
+                       if (token != TokenNameSEMICOLON && token != TokenNameINLINE_HTML) {
                                throwSyntaxError("';' expected after switch-statement.");
                        }
                        getNextToken();
@@ -2283,7 +2283,7 @@ public class Parser implements ITerminalSymbols, CompilerModifiers,
                                throwSyntaxError("'endfor' expected.");
                        }
                        getNextToken();
-                       if (token != TokenNameSEMICOLON) {
+                       if (token != TokenNameSEMICOLON && token != TokenNameINLINE_HTML) {
                                throwSyntaxError("';' expected after for-statement.");
                        }
                        getNextToken();
@@ -2301,7 +2301,7 @@ public class Parser implements ITerminalSymbols, CompilerModifiers,
                                throwSyntaxError("'endwhile' expected.");
                        }
                        getNextToken();
-                       if (token != TokenNameSEMICOLON) {
+                       if (token != TokenNameSEMICOLON && token != TokenNameINLINE_HTML) {
                                throwSyntaxError("';' expected after while-statement.");
                        }
                        getNextToken();
@@ -2318,7 +2318,7 @@ public class Parser implements ITerminalSymbols, CompilerModifiers,
                                throwSyntaxError("'endforeach' expected.");
                        }
                        getNextToken();
-                       if (token != TokenNameSEMICOLON) {
+                       if (token != TokenNameSEMICOLON && token != TokenNameINLINE_HTML) {
                                throwSyntaxError("';' expected after foreach-statement.");
                        }
                        getNextToken();
@@ -4170,7 +4170,7 @@ public class Parser implements ITerminalSymbols, CompilerModifiers,
                                        if (path == null) {
                                                // SyntaxError: "File: << >> doesn't exist in project."
                                                String[] args = { expression.toStringExpression(),
-                                                               project.getLocation().toString() };
+                                                               project.getFullPath().toString() };
                                                problemReporter.phpIncludeNotExistWarning(args,
                                                                literal.sourceStart, literal.sourceEnd,
                                                                referenceContext,
@@ -4991,23 +4991,26 @@ public class Parser implements ITerminalSymbols, CompilerModifiers,
 
        protected void consumePackageDeclarationName(IFile file) {
                // create a package name similar to java package names
-               String projectPath = ProjectPrefUtil.getDocumentRoot(file.getProject())
-                               .toString();
-               String filePath = file.getRawLocation().toString();
-               String ext = file.getRawLocation().getFileExtension();
-               int fileExtensionLength = ext == null ? 0 : ext.length() + 1;
-               ImportReference impt;
-               char[][] tokens;
-               if (filePath.startsWith(projectPath)) {
+               // incastrix
+               //String projectPath = ProjectPrefUtil.getDocumentRoot(file.getProject())
+               //              .toString();
+                String filePath = file.getFullPath().toString();
+                
+                String ext = file.getFileExtension();
+                int fileExtensionLength = ext == null ? 0 : ext.length() + 1;
+                ImportReference impt;
+                char[][] tokens;
+                
+               /*if (filePath.startsWith(projectPath)) {
                        tokens = CharOperation.splitOn('/', filePath.toCharArray(),
                                        projectPath.length() + 1, filePath.length()
                                                        - fileExtensionLength);
-               } else {
+               } else {*/
                        String name = file.getName();
                        tokens = new char[1][];
                        tokens[0] = name.substring(0, name.length() - fileExtensionLength)
                                        .toCharArray();
-               }
+               //}
 
                this.compilationUnit.currentPackage = impt = new ImportReference(
                                tokens, new char[0], 0, 0, true);