Added PHPDoc Scanner and Code Completion Processor
[phpeclipse.git] / net.sourceforge.phpeclipse / src / net / sourceforge / phpeclipse / phpeditor / php / PHPPartitionScanner.java
index a797115..213ff71 100644 (file)
@@ -11,29 +11,27 @@ Contributors:
 **********************************************************************/
 package net.sourceforge.phpeclipse.phpeditor.php;
 
-import java.io.CharArrayWriter;
 import java.util.ArrayList;
 import java.util.List;
 
 import org.eclipse.jface.text.rules.ICharacterScanner;
 import org.eclipse.jface.text.rules.IPredicateRule;
 import org.eclipse.jface.text.rules.IToken;
-import org.eclipse.jface.text.rules.IWordDetector;
 import org.eclipse.jface.text.rules.MultiLineRule;
 import org.eclipse.jface.text.rules.RuleBasedPartitionScanner;
 import org.eclipse.jface.text.rules.Token;
-import org.eclipse.jface.text.rules.WordRule;
 
 /**
  * This scanner recognizes the JavaDoc comments and Java multi line comments.
  */
-public class PHPPartitionScanner extends RuleBasedPartitionScanner {
+public class PHPPartitionScanner extends RuleBasedPartitionScanner implements IPHPPartitionScannerConstants {
 
-  private final static String SKIP = "__skip"; //$NON-NLS-1$
-  public final static String HTML_MULTILINE_COMMENT = "__html_multiline_comment"; //$NON-NLS-1$
-  //   public final static String JAVA_DOC= "__java_javadoc"; //$NON-NLS-1$
-  public final static String PHP = "__php"; //$NON-NLS-1$
-  //public final static String HTML = "__html"; //$NON-NLS-1$
+ // private final static String SKIP = "__skip"; //$NON-NLS-1$
+//  public final static String HTML_MULTILINE_COMMENT = "__html_multiline_comment"; //$NON-NLS-1$
+//  // public final static String JAVA_DOC= "__java_javadoc"; //$NON-NLS-1$
+//  public final static String PHP = "__php"; //$NON-NLS-1$
+//  //public final static String HTML = "__html"; //$NON-NLS-1$
 
   public final static IToken php = new Token(PHP);
   //public final static IToken html = new Token(HTML);
@@ -508,9 +506,17 @@ public class PHPPartitionScanner extends RuleBasedPartitionScanner {
     rules.add(new PHPMultiLineRule("<?\n", "?>", php));
     rules.add(new PHPMultiLineRule("<?\t", "?>", php));
     rules.add(new PHPMultiLineRule("<? ", "?>", php));
+
     rules.add(new PHPMultiLineRule("<?php", "?>", php));
     rules.add(new PHPMultiLineRule("<?PHP", "?>", php));
 
+    rules.add(new PHPMultiLineRule("<?pHP", "?>", php));
+    rules.add(new PHPMultiLineRule("<?PhP", "?>", php));
+    rules.add(new PHPMultiLineRule("<?PHp", "?>", php));
+
+    rules.add(new PHPMultiLineRule("<?Php", "?>", php));
+    rules.add(new PHPMultiLineRule("<?pHp", "?>", php));
+    rules.add(new PHPMultiLineRule("<?phP", "?>", php));
     //    rules.add(new HTMLPatternRule(html)); // "<", "<?",
     //Add rule for processing instructions