2 * $RCSfile: JSStringScanner.java,v $
5 * CH-1700 Fribourg, Switzerland
8 *========================================================================
9 * Modifications history
10 *========================================================================
11 * $Log: not supported by cvs2svn $
12 * Revision 1.1 2004/09/02 18:14:38 jsurfer
13 * intial source from ttp://www.sf.net/projects/wdte
15 * Revision 1.1 2004/02/26 02:25:42 agfitzp
16 * renamed packages to match xml & css
18 * Revision 1.1 2004/02/05 03:10:08 agfitzp
21 * Revision 1.1.2.1 2003/12/12 21:37:24 agfitzp
22 * Experimental work for Classes view
24 * Revision 1.1 2003/05/28 15:17:11 agfitzp
25 * net.sourceforge.phpeclipse.js.core 0.0.1 code base
27 *========================================================================
30 package net.sourceforge.phpeclipse.js.core.parser;
32 import java.util.Vector;
34 import org.eclipse.jface.text.TextAttribute;
35 import org.eclipse.jface.text.rules.IRule;
36 import org.eclipse.jface.text.rules.IToken;
37 import org.eclipse.jface.text.rules.RuleBasedScanner;
38 import org.eclipse.jface.text.rules.SingleLineRule;
39 import org.eclipse.jface.text.rules.Token;
40 import org.eclipse.jface.text.rules.WhitespaceRule;
41 import org.eclipse.swt.graphics.Color;
47 * @author $Author: stefanbjarni $, $Date: 2005-05-06 00:58:28 $
49 * @version $Revision: 1.2 $
51 public class JSStringScanner extends RuleBasedScanner
54 * Creates a new JSFuncScanner object.
58 public JSStringScanner(Color aColor)
60 IToken string = new Token(new TextAttribute(aColor));
61 Vector rules = new Vector();
63 // Add rule for single and double quotes
64 rules.add(new SingleLineRule("\"", "\"", string, '\\'));
65 rules.add(new SingleLineRule("'", "'", string, '\\'));
68 // Add generic whitespace rule.
69 rules.add(new WhitespaceRule(new JSWhitespaceDetector()));
71 IRule[] result = new IRule[rules.size()];
72 rules.copyInto(result);
81 public IToken nextToken()
83 return super.nextToken();