equal
deleted
inserted
replaced
23 * have any questions. |
23 * have any questions. |
24 */ |
24 */ |
25 |
25 |
26 package com.sun.tools.javac.parser; |
26 package com.sun.tools.javac.parser; |
27 |
27 |
|
28 import java.util.ResourceBundle; |
|
29 |
|
30 import com.sun.tools.javac.api.Formattable; |
28 |
31 |
29 /** An interface that defines codes for Java source tokens |
32 /** An interface that defines codes for Java source tokens |
30 * returned from lexical analysis. |
33 * returned from lexical analysis. |
31 * |
34 * |
32 * <p><b>This is NOT part of any API supported by Sun Microsystems. If |
35 * <p><b>This is NOT part of any API supported by Sun Microsystems. If |
33 * you write code that depends on this, you do so at your own risk. |
36 * you write code that depends on this, you do so at your own risk. |
34 * This code and its internal interfaces are subject to change or |
37 * This code and its internal interfaces are subject to change or |
35 * deletion without notice.</b> |
38 * deletion without notice.</b> |
36 */ |
39 */ |
37 public enum Token { |
40 public enum Token implements Formattable { |
38 EOF, |
41 EOF, |
39 ERROR, |
42 ERROR, |
40 IDENTIFIER, |
43 IDENTIFIER, |
41 ABSTRACT("abstract"), |
44 ABSTRACT("abstract"), |
42 ASSERT("assert"), |
45 ASSERT("assert"), |
153 Token(String name) { |
156 Token(String name) { |
154 this.name = name; |
157 this.name = name; |
155 } |
158 } |
156 |
159 |
157 public final String name; |
160 public final String name; |
|
161 |
|
162 public String toString() { |
|
163 switch (this) { |
|
164 case IDENTIFIER: |
|
165 return "token.identifier"; |
|
166 case CHARLITERAL: |
|
167 return "token.character"; |
|
168 case STRINGLITERAL: |
|
169 return "token.string"; |
|
170 case INTLITERAL: |
|
171 return "token.integer"; |
|
172 case LONGLITERAL: |
|
173 return "token.long-integer"; |
|
174 case FLOATLITERAL: |
|
175 return "token.float"; |
|
176 case DOUBLELITERAL: |
|
177 return "token.double"; |
|
178 case ERROR: |
|
179 return "token.bad-symbol"; |
|
180 case EOF: |
|
181 return "token.end-of-input"; |
|
182 case DOT: case COMMA: case SEMI: case LPAREN: case RPAREN: |
|
183 case LBRACKET: case RBRACKET: case LBRACE: case RBRACE: |
|
184 return "'" + name + "'"; |
|
185 default: |
|
186 return name; |
|
187 } |
|
188 } |
|
189 |
|
190 public String getKind() { |
|
191 return "Token"; |
|
192 } |
|
193 |
|
194 public String toString(ResourceBundle bundle) { |
|
195 String s = toString(); |
|
196 return s.startsWith("token.") ? bundle.getString("compiler.misc." + s) : s; |
|
197 } |
158 } |
198 } |