package hterhors.editor.scanners; import java.util.ArrayList; import java.util.List; import org.eclipse.jface.text.rules.IPredicateRule; import org.eclipse.jface.text.rules.IToken; import org.eclipse.jface.text.rules.MultiLineRule; import org.eclipse.jface.text.rules.RuleBasedPartitionScanner; import org.eclipse.jface.text.rules.Token; import hterhors.editor.ISRDocumentProvider; public class ISRPartitionScanner extends RuleBasedPartitionScanner { public final static String ISR_RULE = "isr_rule"; // public final static String ISR_START = "isr_start"; public final static String ISR_IGNORE = "isr_ignore"; public ISRPartitionScanner() { IToken isr_rule = new Token(ISR_RULE); // IToken isr_start = new Token(ISR_START); IToken isr_ignore = new Token(ISR_IGNORE); List<IPredicateRule> rules = new ArrayList<IPredicateRule>(); // rules.add(new MultiLineRule("$$S :", ";", isr_start)); rules.add(new MultiLineRule("$", ";", isr_rule)); rules.add(new MultiLineRule("%IGNORE = ", ";", isr_ignore)); setPredicateRules(rules.toArray(new IPredicateRule[rules.size()])); } /** * @uml.property name="iSRDocumentProvider" * @uml.associationEnd inverse="iSRPartitionScanner:hterhors.editor.ISRDocumentProvider" */ private ISRDocumentProvider isrDocumentProvider = new hterhors.editor.ISRDocumentProvider(); /** * Getter of the property <tt>iSRDocumentProvider</tt> * @return Returns the isrDocumentProvider. * @uml.property name="iSRDocumentProvider" */ public ISRDocumentProvider getISRDocumentProvider() { return isrDocumentProvider; } /** * Setter of the property <tt>iSRDocumentProvider</tt> * @param iSRDocumentProvider The isrDocumentProvider to set. * @uml.property name="iSRDocumentProvider" */ public void setISRDocumentProvider(ISRDocumentProvider isrDocumentProvider) { this.isrDocumentProvider = isrDocumentProvider; } }