SyntaxMain {
  public static void main(String args[]) throws Exception
  {{
        if(args.length > 1)
        {
                //test
		ClassGraph initial = ClassGraph.parse(new FileInputStream(System.getProperty("user.dir") + "/" + args[0]);
		System.out.println(initial.normalize().toString());
		
		//create both classgraph and syntax classgraphs
		//ClassGraph cgSyntax = new ClassGraph(new ClassGraph(true, false), "from SyntaxEnhancement bypassing -> *, tail, * to *");
	        //ClassGraph cgWithoutSyntax = new ClassGraph(new ClassGraph(true, false), "from Program to *");

		//input cds
                //SyntaxEnhancement seRootObj = SyntaxEnhancement.parse(new FileInputStream(System.getProperty("user.dir") + "/" + args[1]));
                //ClassGraphh cgRootObj  = ClassGraphh.parse(new FileInputStream(System.getProperty("user.dir") + "/" + args[0]));
                //cgRootObj.print();
		
		/**
                //populate hashtable with class and part name key/value pairs
                TraversalGraph tgWithoutSyntax = new TraversalGraph("from ClassGraphh to ClassDef", cgWithoutSyntax);
                ClassGraphVisitor cgv = new ClassGraphVisitor();
                cgv.setNameTable(new Hashtable());
                cgv.setCG(cgWithoutSyntax);
                tgWithoutSyntax.traverse(cgRootObj, cgv);
                Hashtable nameTable = cgv.getNameTable();

                System.out.println(nameTable);

		//setup syntax command traversals
		TraversalGraph tgSyntax = new TraversalGraph("from Enhancement to EnhancementBody", cgSyntax);
		CommandVisitor cv = new CommandVisitor();
		cv.setNameTable(nameTable);
		cv.setCGSyntax(cgSyntax);
		cv.setCGWithoutSyntax(cgWithoutSyntax);		
		
		//iterate through each syntax command
                Enhancement_List sentences = seRootObj.get_enhancement_list();
                while(sentences.hasMoreElements())
                {
			Enhancement sent = (Enhancement)sentences.nextElement();
			cv.setEnhancement(sent);
			tgSyntax.traverse(sent, cv);
		}
		
		System.out.println();		

		cgRootObj.print();
		**/
	}
  }}
}






