KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > syntax > jedit > tokenmarker > CCTokenMarker


1 /*
2  * Copyright (C) 2005 - 2006 JasperSoft Corporation. All rights reserved.
3  * http://www.jaspersoft.com.
4  *
5  * Unless you have purchased a commercial license agreement from JasperSoft,
6  * the following license terms apply:
7  *
8  * This program is free software; you can redistribute it and/or modify
9  * it under the terms of the GNU General Public License version 2 as published by
10  * the Free Software Foundation.
11  *
12  * This program is distributed WITHOUT ANY WARRANTY; and without the
13  * implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
14  * See the GNU General Public License for more details.
15  *
16  * You should have received a copy of the GNU General Public License
17  * along with this program; if not, see http://www.gnu.org/licenses/gpl.txt
18  * or write to:
19  *
20  * Free Software Foundation, Inc.,
21  * 59 Temple Place - Suite 330,
22  * Boston, MA USA 02111-1307
23  *
24  *
25  *
26  *
27  * CCTokenMarker.java
28  *
29  */

30
31 package org.syntax.jedit.tokenmarker;
32
33 import org.syntax.jedit.*;
34 import javax.swing.text.Segment JavaDoc;
35
36 /**
37  * C++ token marker.
38  *
39  * @author Slava Pestov
40  * @version $Id: CCTokenMarker.java 932 2006-10-20 09:32:45Z gtoffoli $
41  */

42 public class CCTokenMarker extends CTokenMarker
43 {
44     public CCTokenMarker()
45     {
46         super(true,getKeywords());
47     }
48
49     public static KeywordMap getKeywords()
50     {
51         if(ccKeywords == null)
52         {
53             ccKeywords = new KeywordMap(false);
54
55             ccKeywords.add("and", Token.KEYWORD3);
56             ccKeywords.add("and_eq", Token.KEYWORD3);
57             ccKeywords.add("asm", Token.KEYWORD2); //
58
ccKeywords.add("auto", Token.KEYWORD1); //
59
ccKeywords.add("bitand", Token.KEYWORD3);
60             ccKeywords.add("bitor", Token.KEYWORD3);
61             ccKeywords.add("bool",Token.KEYWORD3);
62             ccKeywords.add("break", Token.KEYWORD1); //
63
ccKeywords.add("case", Token.KEYWORD1); //
64
ccKeywords.add("catch", Token.KEYWORD1);
65             ccKeywords.add("char", Token.KEYWORD3); //
66
ccKeywords.add("class", Token.KEYWORD3);
67             ccKeywords.add("compl", Token.KEYWORD3);
68             ccKeywords.add("const", Token.KEYWORD1); //
69
ccKeywords.add("const_cast", Token.KEYWORD3);
70             ccKeywords.add("continue", Token.KEYWORD1); //
71
ccKeywords.add("default", Token.KEYWORD1); //
72
ccKeywords.add("delete", Token.KEYWORD1);
73             ccKeywords.add("do",Token.KEYWORD1); //
74
ccKeywords.add("double" ,Token.KEYWORD3); //
75
ccKeywords.add("dynamic_cast", Token.KEYWORD3);
76             ccKeywords.add("else", Token.KEYWORD1); //
77
ccKeywords.add("enum", Token.KEYWORD3); //
78
ccKeywords.add("explicit", Token.KEYWORD1);
79             ccKeywords.add("export", Token.KEYWORD2);
80             ccKeywords.add("extern", Token.KEYWORD2); //
81
ccKeywords.add("false", Token.LITERAL2);
82             ccKeywords.add("float", Token.KEYWORD3); //
83
ccKeywords.add("for", Token.KEYWORD1); //
84
ccKeywords.add("friend", Token.KEYWORD1);
85             ccKeywords.add("goto", Token.KEYWORD1); //
86
ccKeywords.add("if", Token.KEYWORD1); //
87
ccKeywords.add("inline", Token.KEYWORD1);
88             ccKeywords.add("int", Token.KEYWORD3); //
89
ccKeywords.add("long", Token.KEYWORD3); //
90
ccKeywords.add("mutable", Token.KEYWORD3);
91             ccKeywords.add("namespace", Token.KEYWORD2);
92             ccKeywords.add("new", Token.KEYWORD1);
93             ccKeywords.add("not", Token.KEYWORD3);
94             ccKeywords.add("not_eq", Token.KEYWORD3);
95             ccKeywords.add("operator", Token.KEYWORD3);
96             ccKeywords.add("or", Token.KEYWORD3);
97             ccKeywords.add("or_eq", Token.KEYWORD3);
98             ccKeywords.add("private", Token.KEYWORD1);
99             ccKeywords.add("protected", Token.KEYWORD1);
100             ccKeywords.add("public", Token.KEYWORD1);
101             ccKeywords.add("register", Token.KEYWORD1);
102             ccKeywords.add("reinterpret_cast", Token.KEYWORD3);
103             ccKeywords.add("return", Token.KEYWORD1); //
104
ccKeywords.add("short", Token.KEYWORD3); //
105
ccKeywords.add("signed", Token.KEYWORD3); //
106
ccKeywords.add("sizeof", Token.KEYWORD1); //
107
ccKeywords.add("static", Token.KEYWORD1); //
108
ccKeywords.add("static_cast", Token.KEYWORD3);
109             ccKeywords.add("struct", Token.KEYWORD3); //
110
ccKeywords.add("switch", Token.KEYWORD1); //
111
ccKeywords.add("template", Token.KEYWORD3);
112             ccKeywords.add("this", Token.LITERAL2);
113             ccKeywords.add("throw", Token.KEYWORD1);
114             ccKeywords.add("true", Token.LITERAL2);
115             ccKeywords.add("try", Token.KEYWORD1);
116             ccKeywords.add("typedef", Token.KEYWORD3); //
117
ccKeywords.add("typeid", Token.KEYWORD3);
118             ccKeywords.add("typename", Token.KEYWORD3);
119             ccKeywords.add("union", Token.KEYWORD3); //
120
ccKeywords.add("unsigned", Token.KEYWORD3); //
121
ccKeywords.add("using", Token.KEYWORD2);
122             ccKeywords.add("virtual", Token.KEYWORD1);
123             ccKeywords.add("void", Token.KEYWORD1); //
124
ccKeywords.add("volatile", Token.KEYWORD1); //
125
ccKeywords.add("wchar_t", Token.KEYWORD3);
126             ccKeywords.add("while", Token.KEYWORD1); //
127
ccKeywords.add("xor", Token.KEYWORD3);
128             ccKeywords.add("xor_eq", Token.KEYWORD3);
129
130             // non ANSI keywords
131
ccKeywords.add("NULL", Token.LITERAL2);
132         }
133         return ccKeywords;
134     }
135
136     // private members
137
private static KeywordMap ccKeywords;
138 }
139
Popular Tags