KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > armedbear > j > ObjCMode


1 /*
2  * ObjCMode.java
3  *
4  * Copyright (C) 2003-2004 Peter Graves
5  * $Id: ObjCMode.java,v 1.4 2004/01/04 01:39:24 piso Exp $
6  *
7  * This program is free software; you can redistribute it and/or
8  * modify it under the terms of the GNU General Public License
9  * as published by the Free Software Foundation; either version 2
10  * of the License, or (at your option) any later version.
11  *
12  * This program is distributed in the hope that it will be useful,
13  * but WITHOUT ANY WARRANTY; without even the implied warranty of
14  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15  * GNU General Public License for more details.
16  *
17  * You should have received a copy of the GNU General Public License
18  * along with this program; if not, write to the Free Software
19  * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
20  */

21
22 package org.armedbear.j;
23
24 public final class ObjCMode extends CMode implements Constants, Mode
25 {
26     private static final String JavaDoc[] objcConditionals = {
27         "if",
28         "else",
29         "do",
30         "while",
31         "for",
32         "switch"
33     };
34
35     private static ObjCMode mode = new ObjCMode();
36
37     private ObjCMode()
38     {
39         super(OBJC_MODE, OBJC_MODE_NAME);
40         keywords = new Keywords(this);
41         conditionals = objcConditionals;
42     }
43
44     public static Mode getMode()
45     {
46         return mode;
47     }
48
49     public final String JavaDoc getCommentStart()
50     {
51         return "// ";
52     }
53
54     public final String JavaDoc getCommentEnd()
55     {
56         return null;
57     }
58
59     public Formatter getFormatter(Buffer buffer)
60     {
61         return new CFormatter(buffer, LANGUAGE_OBJC);
62     }
63
64     public Tagger getTagger(SystemBuffer buffer)
65     {
66         return new ObjCTagger(buffer);
67     }
68
69     public boolean isIdentifierStart(char c)
70     {
71         if (c == '@')
72             return true;
73         return super.isIdentifierStart(c);
74     }
75 }
76
Popular Tags