1 package org.simantics.scl.ui.editor2;
\r
3 import org.eclipse.jface.text.rules.EndOfLineRule;
\r
4 import org.eclipse.jface.text.rules.IPredicateRule;
\r
5 import org.eclipse.jface.text.rules.IToken;
\r
6 import org.eclipse.jface.text.rules.MultiLineRule;
\r
7 import org.eclipse.jface.text.rules.RuleBasedPartitionScanner;
\r
8 import org.eclipse.jface.text.rules.SingleLineRule;
\r
9 import org.eclipse.jface.text.rules.Token;
\r
11 public class SCLPartitionScanner extends RuleBasedPartitionScanner {
\r
12 public static final String SCL_COMMENT = "COMMENT";
\r
13 public static final String SCL_STRING = "STRING";
\r
15 public static final IToken COMMENT_TOKEN = new Token(SCL_COMMENT);
\r
16 public static final IToken STRING_TOKEN = new Token(SCL_STRING);
\r
18 public static final String[] PARTITION_TYPES = new String[] {
\r
23 public SCLPartitionScanner() {
\r
26 setPredicateRules(new IPredicateRule[] {
\r
27 new EndOfLineRule("//", COMMENT_TOKEN),
\r
28 new MultiLineRule("\"\"\"", "\"\"\"", STRING_TOKEN, (char) 0, true),
\r
29 new SingleLineRule("\"", "\"", STRING_TOKEN, '\\'),
\r
30 new MultiLineRule("/*", "*/", COMMENT_TOKEN, (char) 0, true),
\r