DemeterJ version 0.8.2 Copyright (c) 2000 Northeastern University Reading project file scs.prj... Running the generator... Parsing scs.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/scs.xcd... Checking for duplicate part names... Reading behavior files: scs.beh display.beh PUVisitor.beh Undefined.beh CyclicInher.beh Flatten.beh TerminalBuffer.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... Computing traversal graph for __trav_display... generating traversal methods... Computing traversal graph for __trav_print... generating traversal methods... 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... Running the test... ---- CLASS GRAPH BEFORE FLATTENNING ---- Main=String. A:F|B commonH. B=XX. X=ZIdent. F:Z. H=. Z=HH. Y=. Attempting the Flattenning Check FlatteningVisitor three three ---- CLASS GRAPH AFTER FLATTENNING ---- Main=String. A:F|B common. B=XXH. X=ZIdent. F:Z. H=. Z=HHH. Y=.