summaryrefslogtreecommitdiffstats
path: root/src/java/com/sun/gluegen/jgram/Test.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/java/com/sun/gluegen/jgram/Test.java')
-rw-r--r--src/java/com/sun/gluegen/jgram/Test.java132
1 files changed, 0 insertions, 132 deletions
diff --git a/src/java/com/sun/gluegen/jgram/Test.java b/src/java/com/sun/gluegen/jgram/Test.java
deleted file mode 100644
index 996d645..0000000
--- a/src/java/com/sun/gluegen/jgram/Test.java
+++ /dev/null
@@ -1,132 +0,0 @@
-package com.sun.gluegen.jgram;
-
-import java.util.*;
-
-import java.io.*;
-// import antlr.collections.AST;
-import antlr.collections.impl.*;
-import antlr.debug.misc.*;
-import antlr.*;
-// import java.awt.event.*;
-
-class Test {
-
- static boolean showTree = false;
- public static void main(String[] args) {
- // Use a try/catch block for parser exceptions
- try {
- // if we have at least one command-line argument
- if (args.length > 0 ) {
- System.err.println("Parsing...");
-
- // for each directory/file specified on the command line
- for(int i=0; i< args.length;i++) {
- if ( args[i].equals("-showtree") ) {
- showTree = true;
- }
- else {
- doFile(new File(args[i])); // parse it
- }
- } }
- else
- System.err.println("Usage: java com.sun.gluegen.jgram.Test [-showtree] "+
- "<directory or file name>");
- }
- catch(Exception e) {
- System.err.println("exception: "+e);
- e.printStackTrace(System.err); // so we can get stack trace
- }
- }
-
-
- // This method decides what action to take based on the type of
- // file we are looking at
- public static void doFile(File f)
- throws Exception {
- // If this is a directory, walk each file/dir in that directory
- if (f.isDirectory()) {
- String files[] = f.list();
- for(int i=0; i < files.length; i++)
- doFile(new File(f, files[i]));
- }
-
- // otherwise, if this is a java file, parse it!
- else if ((f.getName().length()>5) &&
- f.getName().substring(f.getName().length()-5).equals(".java")) {
- System.err.println(" "+f.getAbsolutePath());
- // parseFile(f.getName(), new FileInputStream(f));
- parseFile(f.getName(), new BufferedReader(new FileReader(f)));
- }
- }
-
- // Here's where we do the real work...
- public static void parseFile(String f, Reader r)
- throws Exception {
- try {
- // Create a scanner that reads from the input stream passed to us
- JavaLexer lexer = new JavaLexer(r);
- lexer.setFilename(f);
-
- // Create a parser that reads from the scanner
- JavaParser parser = new JavaParser(lexer);
- parser.setFilename(f);
-
- // start parsing at the compilationUnit rule
- parser.compilationUnit();
-
- Set set = parser.getParsedEnumNames();
- System.out.println("Enums");
- for(Iterator iter = set.iterator(); iter.hasNext(); ) {
- String s = (String) iter.next();
- System.out.println(s);
- }
- System.out.println("Functions");
- set = parser.getParsedFunctionNames();
- for(Iterator iter = set.iterator(); iter.hasNext(); ) {
- String s = (String) iter.next();
- System.out.println(s);
- }
-
- // do something with the tree
- //doTreeAction(f, parser.getAST(), parser.getTokenNames());
- }
- catch (Exception e) {
- System.err.println("parser exception: "+e);
- e.printStackTrace(); // so we can get stack trace
- }
- }
-
- /*
- public static void doTreeAction(String f, AST t, String[] tokenNames) {
- if ( t==null ) return;
- if ( showTree ) {
- ((CommonAST)t).setVerboseStringConversion(true, tokenNames);
- ASTFactory factory = new ASTFactory();
- AST r = factory.create(0,"AST ROOT");
- r.setFirstChild(t);
- final ASTFrame frame = new ASTFrame("Java AST", r);
- frame.setVisible(true);
- frame.addWindowListener(
- new WindowAdapter() {
- public void windowClosing (WindowEvent e) {
- frame.setVisible(false); // hide the Frame
- frame.dispose();
- System.exit(0);
- }
- }
- );
- // System.out.println(t.toStringList());
- }
- JavaTreeParser tparse = new JavaTreeParser();
- try {
- tparse.compilationUnit(t);
- // System.out.println("successful walk of result AST for "+f);
- }
- catch (RecognitionException e) {
- System.err.println(e.getMessage());
- e.printStackTrace();
- }
-
- } */
-}
-