1 /* gnu.classpath.tools.gjdoc.expr.ConstantChar
2 Copyright (C) 2004 Free Software Foundation, Inc.
4 This file is part of GNU Classpath.
6 GNU Classpath is free software; you can redistribute it and/or modify
7 it under the terms of the GNU General Public License as published by
8 the Free Software Foundation; either version 2, or (at your option)
11 GNU Classpath is distributed in the hope that it will be useful, but
12 WITHOUT ANY WARRANTY; without even the implied warranty of
13 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
14 General Public License for more details.
16 You should have received a copy of the GNU General Public License
17 along with GNU Classpath; see the file COPYING. If not, write to the
18 Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
21 package gnu
.classpath
.tools
.gjdoc
.expr
;
24 extends ConstantExpression
28 public ConstantChar(String stringValue
)
30 this.value
= stringValue
.charAt(1); // FIXME
32 switch (stringValue
.charAt(2)) {
33 case 'n': value
= '\n'; break;
34 case 't': value
= '\t'; break;
35 case 'f': value
= '\f'; break;
36 case 'r': value
= '\r'; break;
37 case 'b': value
= '\b'; break;
40 String stringVal
= stringValue
.substring(3, stringValue
.length() - 1);
42 while (stringVal.length() > 1 && stringVal.charAt(0) == '0') {
43 stringVal = stringVal.substring(1);
46 value
= (char)Integer
.parseInt(stringVal
, 16); break;
52 public ConstantChar(char charValue
)
54 this.value
= charValue
;
62 public Number
asNumber()
64 return new Integer((int)value
);
67 public Object
asObject()
69 return new Character(value
);
72 public boolean isNumber()
77 public String
toString()
79 return Character
.toString(value
);