Demeter/Java version 0.8.1 Copyright (c) 2000 Northeastern University Reading project file program.prj... Running the generator... Parsing tree.cd... Building hashtable of classes... Adding generic visitors: PrintVisitor CopyVisitor SubgraphVisitor EqualVisitor DisplayVisitor TraceVisitor UniversalVisitor Marking not-parsed classes... Marking visitor classes... Expanding parameterized classes... Converting repetition classes... Filling in part names... Setting inheritance links... Saving expanded CD to gen/tree.xcd... Checking for duplicate part names... Reading behavior files: tree.beh summing.beh class-graph.beh show-trees.beh Filling in visitor names... Marking derived parts... Making generic visitor behavior files... Reading behavior files: gen/UniversalVisitor.beh gen/PrintVisitor.beh gen/CopyVisitor.beh gen/SubgraphVisitor.beh gen/EqualVisitor.beh gen/DisplayVisitor.beh gen/TraceVisitor.beh Building cyclic class graph... Converting adaptive methods... Building visitor tables... Expanding universal traversal... Expanding static traversals... Adding Enumeration thingies to Repetition classes Adding Subtraversal class. Generating core aspect code to gen... Generating grammar to gen/Parser.jj... Done. Running the weaver... Running the compiler... gen/DisplayVisitorDJ.java:0:0:0:0: Warning: The file "/proj/demsys/demjava/alpha/dj.jar" is not a valid zip file. gen/DisplayVisitorDJ.java:0:0:0:0: Warning: The file "/proj/demsys/demjava/alpha/aplib.jar" is not a valid zip file. Running the test... The DJ version is: DJ version 0.8.1 The class graph is============================= java.lang.Object : UniversalVisitor | Token | java.lang.String | java.lang.Throwable | SummingVisitor2 | edu.neu.ccs.demeter.dj.Visitor | SummingVisitor | Label | java.io.Reader | ASCII_UCodeESC_CharStream | java.lang.StringBuffer | ParserTokenManager | java.io.Writer | java.lang.reflect.AccessibleObject | edu.neu.ccs.demeter.AroundContinuation | Tree | Example | java.util.AbstractCollection | Parser | Main common . UniversalVisitor : PrintVisitor | TraceVisitor | DisplayVisitor | EqualVisitor | SubgraphVisitor | CopyVisitor common extends java.lang.Object. ParseException = boolean Token int java.lang.String java.lang.String extends java.lang.Exception. boolean = . Token = int int int int int java.lang.String Token Token extends java.lang.Object. int = . java.lang.String = extends java.lang.Object implements java.io.Serializable, java.lang.Comparable. java.io.Serializable : java.lang.String | java.lang.Throwable | java.lang.StringBuffer | java.util.Vector common . java.lang.Comparable : java.lang.String common . java.lang.Exception : ParseException common extends java.lang.Throwable. java.lang.Throwable : java.lang.Exception | java.lang.Error common java.lang.Object java.lang.String extends java.lang.Object implements java.io.Serializable. SummingVisitor2 = int extends java.lang.Object. SummingVisitorDJ = int extends edu.neu.ccs.demeter.dj.Visitor. edu.neu.ccs.demeter.dj.Visitor : SummingVisitorDJ | DisplayVisitorDJ common extends java.lang.Object. SummingVisitor = int extends java.lang.Object. Label = int extends java.lang.Object. ASCII_UCodeESC_CharStream = int int int int int int int int java.io.Reader boolean boolean char char int int int extends java.lang.Object. java.io.Reader = extends java.lang.Object. char = . ParserTokenManager = ASCII_UCodeESC_CharStream java.lang.StringBuffer int int char int int int int int int extends java.lang.Object implements ParserConstants. java.lang.StringBuffer = extends java.lang.Object implements java.io.Serializable. ParserConstants : ParserTokenManager | Parser common . TokenMgrError = int extends java.lang.Error. java.lang.Error : TokenMgrError common extends java.lang.Throwable. PrintVisitor = int boolean java.io.PrintWriter extends UniversalVisitor. java.io.PrintWriter = extends java.io.Writer. java.io.Writer : java.io.PrintWriter common extends java.lang.Object. TraceVisitor = int java.io.PrintWriter extends UniversalVisitor. DisplayVisitor = int java.io.PrintWriter extends UniversalVisitor. __Subtraversal = java.lang.reflect.Method java.lang.Object java.lang.Object extends edu.neu.ccs.demeter.AroundContinuation. java.lang.reflect.Method = extends java.lang.reflect.AccessibleObject implements java.lang.reflect.Member. java.lang.reflect.AccessibleObject : java.lang.reflect.Method common extends java.lang.Object. java.lang.reflect.Member : java.lang.reflect.Method common . edu.neu.ccs.demeter.AroundContinuation : __Subtraversal common extends java.lang.Object. Example = Tree extends java.lang.Object. Tree = Label Tree Tree extends java.lang.Object. Parser = ParserTokenManager ASCII_UCodeESC_CharStream Token Token int int java.util.Vector int int extends java.lang.Object implements ParserConstants. java.util.Vector : java.util.Stack common extends java.util.AbstractList implements java.util.List, java.lang.Cloneable, java.io.Serializable. java.util.AbstractList : java.util.Vector common extends java.util.AbstractCollection implements java.util.List. java.util.AbstractCollection : java.util.AbstractList common extends java.lang.Object implements java.util.Collection. java.util.Collection : java.util.AbstractCollection | java.util.List common java.lang.Object. java.util.List : java.util.AbstractList | java.util.Vector common extends java.util.Collection. java.lang.Cloneable : java.util.Vector common . Main = extends java.lang.Object. EqualVisitor = boolean java.util.Stack extends UniversalVisitor. java.util.Stack = extends java.util.Vector. SubgraphVisitor = boolean java.util.Stack extends UniversalVisitor. CopyVisitor = java.util.Stack extends UniversalVisitor. DisplayVisitorDJ = int extends edu.neu.ccs.demeter.dj.Visitor. edu.neu.ccs.demeter.dj.Collection = java.lang.Object. end class graph ============================= show left trees begin DiplayVisitorDJ: before Tree 2 DiplayVisitorDJ: before Tree 2 DiplayVisitorDJ: before Tree 2 DONE: show left trees show all trees begin DiplayVisitorDJ: before Tree 2 DiplayVisitorDJ: before Tree 2 DiplayVisitorDJ: before Tree 2 DiplayVisitorDJ: before Tree 3 DiplayVisitorDJ: before Tree 4 DONE: show all trees begin before Label before Label before Label before Label before Label DJ output = 13