KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > netbeans > modules > lexer > gen > javacc > JavaCCLanguageDescriptionGenerator


1 /*
2  * The contents of this file are subject to the terms of the Common Development
3  * and Distribution License (the License). You may not use this file except in
4  * compliance with the License.
5  *
6  * You can obtain a copy of the License at http://www.netbeans.org/cddl.html
7  * or http://www.netbeans.org/cddl.txt.
8  *
9  * When distributing Covered Code, include this CDDL Header Notice in each file
10  * and include the License file at http://www.netbeans.org/cddl.txt.
11  * If applicable, add the following below the CDDL Header, with the fields
12  * enclosed by brackets [] replaced by your own identifying information:
13  * "Portions Copyrighted [year] [name of copyright owner]"
14  *
15  * The Original Software is NetBeans. The Initial Developer of the Original
16  * Software is Sun Microsystems, Inc. Portions Copyright 1997-2007 Sun
17  * Microsystems, Inc. All Rights Reserved.
18  */

19
20 package org.netbeans.modules.lexer.gen.javacc;
21
22 import java.io.File JavaDoc;
23 import java.util.HashMap JavaDoc;
24 import java.util.List JavaDoc;
25 import org.netbeans.modules.lexer.gen.LanguageData;
26 import org.netbeans.modules.lexer.gen.TokenTypes;
27 import org.netbeans.spi.lexer.util.LexerUtilities;
28
29 /**
30  * Generates initial skeleton of the xml file
31  * (describing the particular language) from the class
32  * (or interface) that contains integer constants.
33  * Such file is typically generated by the lexer
34  * generator tools.
35  * <BR>This tool is useful when the grammar file
36  * of the particular language already
37  * exists because it creates the initial version
38  * of the language xml description that can be
39  * further customized.
40  *
41  * @author Miloslav Metelka
42  * @version 1.00
43  */

44
45 public class JavaCCLanguageDescriptionGenerator {
46
47     public String JavaDoc generate(String JavaDoc tokenTypesClassName) throws ClassNotFoundException JavaDoc {
48         LanguageData data = new LanguageData();
49
50         // Apply token types class info
51
Class JavaDoc tokenTypesClass = Class.forName(tokenTypesClassName);
52         TokenTypes tokenTypes = new TokenTypes(tokenTypesClass);
53         data.registerTokenTypes(tokenTypes);
54
55         return data.createDescription();
56     }
57     
58 }
59
60
Popular Tags