Organized imports
[phpeclipse.git] / archive / net.sourceforge.phpeclipse.js.core / src / net / sourceforge / phpeclipse / js / core / parser / JSStringScanner.java
1 /*
2  * $RCSfile: JSStringScanner.java,v $
3  *
4  * Copyright 2002
5  * CH-1700 Fribourg, Switzerland
6  * All rights reserved.
7  *
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
14  *
15  * Revision 1.1  2004/02/26 02:25:42  agfitzp
16  * renamed packages to match xml & css
17  *
18  * Revision 1.1  2004/02/05 03:10:08  agfitzp
19  * Initial Submission
20  *
21  * Revision 1.1.2.1  2003/12/12 21:37:24  agfitzp
22  * Experimental work for Classes view
23  *
24  * Revision 1.1  2003/05/28 15:17:11  agfitzp
25  * net.sourceforge.phpeclipse.js.core 0.0.1 code base
26  *
27  *========================================================================
28 */
29
30 package net.sourceforge.phpeclipse.js.core.parser;
31
32 import java.util.Vector;
33
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;
42
43
44 /**
45  * 
46  *
47  * @author $Author: stefanbjarni $, $Date: 2005-05-06 00:58:28 $
48  *
49  * @version $Revision: 1.2 $
50  */
51 public class JSStringScanner extends RuleBasedScanner
52 {
53    /**
54     * Creates a new JSFuncScanner object.
55     *
56     * @param manager 
57     */
58    public JSStringScanner(Color aColor)
59    {
60       IToken string = new Token(new TextAttribute(aColor));
61       Vector rules = new Vector();
62
63       // Add rule for single and double quotes
64       rules.add(new SingleLineRule("\"", "\"", string, '\\'));
65       rules.add(new SingleLineRule("'", "'", string, '\\'));
66
67
68       // Add generic whitespace rule.
69       rules.add(new WhitespaceRule(new JSWhitespaceDetector()));
70
71       IRule[] result = new IRule[rules.size()];
72       rules.copyInto(result);
73       setRules(result);
74    }
75
76    /**
77     *
78     *
79     * @return 
80     */
81    public IToken nextToken()
82    {
83       return super.nextToken();
84    }
85 }