// This file is automatically generated by DemeterJ. EqualVisitor { {{ private java.util.Stack history = new java.util.Stack(); public EqualVisitor(Object obj) { history.push(obj); } }} before Main {{ Object obj = history.peek(); is_equal = is_equal && obj.getClass().equals(host.getClass()); if(!is_equal) return; }} before -> Histories, newstrategy_plist, NewStrategy_PList {{ if (is_equal) { Histories obj = (Histories) history.peek(); Object temp1 = obj.get_newstrategy_plist(); if(temp1==null) { is_equal = false; return; } history.push(temp1); } }} after -> Histories, newstrategy_plist, NewStrategy_PList {{ if (is_equal) history.pop(); }} before -> Histories, historypcd_plist, HistoryPcd_PList {{ if (is_equal) { Histories obj = (Histories) history.peek(); Object temp2 = obj.get_historypcd_plist(); if(temp2==null) { is_equal = false; return; } history.push(temp2); } }} after -> Histories, historypcd_plist, HistoryPcd_PList {{ if (is_equal) history.pop(); }} before Histories {{ Object obj = history.peek(); is_equal = is_equal && obj.getClass().equals(host.getClass()); if(!is_equal) return; }} before -> HistoryPcd, newstrategy, NewStrategy {{ if (is_equal) { HistoryPcd obj = (HistoryPcd) history.peek(); Object temp3 = obj.get_newstrategy(); if(temp3==null) { is_equal = false; return; } history.push(temp3); } }} after -> HistoryPcd, newstrategy, NewStrategy {{ if (is_equal) history.pop(); }} before HistoryPcd {{ Object obj = history.peek(); is_equal = is_equal && obj.getClass().equals(host.getClass()); if(!is_equal) return; }} before NewStrategy {{ Object obj = history.peek(); is_equal = is_equal && obj.getClass().equals(host.getClass()); if(!is_equal) return; }} before PrimitiveNewStrategy {{ Object obj = history.peek(); is_equal = is_equal && obj.getClass().equals(host.getClass()); if(!is_equal) return; }} before -> Entry, pointcut, Pointcut {{ if (is_equal) { Entry obj = (Entry) history.peek(); Object temp4 = obj.get_pointcut(); if(temp4==null) { is_equal = false; return; } history.push(temp4); } }} after -> Entry, pointcut, Pointcut {{ if (is_equal) history.pop(); }} before Entry {{ Object obj = history.peek(); is_equal = is_equal && obj.getClass().equals(host.getClass()); if(!is_equal) return; }} before -> Exit, pointcut, Pointcut {{ if (is_equal) { Exit obj = (Exit) history.peek(); Object temp5 = obj.get_pointcut(); if(temp5==null) { is_equal = false; return; } history.push(temp5); } }} after -> Exit, pointcut, Pointcut {{ if (is_equal) history.pop(); }} before Exit {{ Object obj = history.peek(); is_equal = is_equal && obj.getClass().equals(host.getClass()); if(!is_equal) return; }} before -> Pointcut, pointcutname, PointcutName {{ if (is_equal) { Pointcut obj = (Pointcut) history.peek(); Object temp6 = obj.get_pointcutname(); if(temp6==null) { is_equal = false; return; } history.push(temp6); } }} after -> Pointcut, pointcutname, PointcutName {{ if (is_equal) history.pop(); }} before Pointcut {{ Object obj = history.peek(); is_equal = is_equal && obj.getClass().equals(host.getClass()); if(!is_equal) return; }} before CompositeNewStrategy {{ Object obj = history.peek(); is_equal = is_equal && obj.getClass().equals(host.getClass()); if(!is_equal) return; }} before NamedNewStrategy {{ Object obj = history.peek(); is_equal = is_equal && obj.getClass().equals(host.getClass()); if(!is_equal) return; }} before -> AbstractNewStrategy, modifiers, Modifiers {{ if (is_equal) { AbstractNewStrategy obj = (AbstractNewStrategy) history.peek(); Object temp7 = obj.get_modifiers(); if(temp7==null) { is_equal = false; return; } history.push(temp7); } }} after -> AbstractNewStrategy, modifiers, Modifiers {{ if (is_equal) history.pop(); }} before -> AbstractNewStrategy, newstrategyname, NewStrategyName {{ if (is_equal) { AbstractNewStrategy obj = (AbstractNewStrategy) history.peek(); Object temp8 = obj.get_newstrategyname(); if(temp8==null) { is_equal = false; return; } history.push(temp8); } }} after -> AbstractNewStrategy, newstrategyname, NewStrategyName {{ if (is_equal) history.pop(); }} before -> AbstractNewStrategy, formals, Formals {{ if (is_equal) { AbstractNewStrategy obj = (AbstractNewStrategy) history.peek(); Object temp9 = obj.get_formals(); if(temp9==null) { is_equal = false; return; } history.push(temp9); } }} after -> AbstractNewStrategy, formals, Formals {{ if (is_equal) history.pop(); }} before AbstractNewStrategy {{ Object obj = history.peek(); is_equal = is_equal && obj.getClass().equals(host.getClass()); if(!is_equal) return; }} before -> ConcreteNewStrategy, modifiers, Modifiers {{ if (is_equal) { ConcreteNewStrategy obj = (ConcreteNewStrategy) history.peek(); Object temp10 = obj.get_modifiers(); if(temp10==null) { is_equal = false; return; } history.push(temp10); } }} after -> ConcreteNewStrategy, modifiers, Modifiers {{ if (is_equal) history.pop(); }} before -> ConcreteNewStrategy, newstrategyname, NewStrategyName {{ if (is_equal) { ConcreteNewStrategy obj = (ConcreteNewStrategy) history.peek(); Object temp11 = obj.get_newstrategyname(); if(temp11==null) { is_equal = false; return; } history.push(temp11); } }} after -> ConcreteNewStrategy, newstrategyname, NewStrategyName {{ if (is_equal) history.pop(); }} before -> ConcreteNewStrategy, formals, Formals {{ if (is_equal) { ConcreteNewStrategy obj = (ConcreteNewStrategy) history.peek(); Object temp12 = obj.get_formals(); if(temp12==null) { is_equal = false; return; } history.push(temp12); } }} after -> ConcreteNewStrategy, formals, Formals {{ if (is_equal) history.pop(); }} before -> ConcreteNewStrategy, orderednewstrategy_barlist, OrderedNewStrategy_BarList {{ if (is_equal) { ConcreteNewStrategy obj = (ConcreteNewStrategy) history.peek(); Object temp13 = obj.get_orderednewstrategy_barlist(); if(temp13==null) { is_equal = false; return; } history.push(temp13); } }} after -> ConcreteNewStrategy, orderednewstrategy_barlist, OrderedNewStrategy_BarList {{ if (is_equal) history.pop(); }} before ConcreteNewStrategy {{ Object obj = history.peek(); is_equal = is_equal && obj.getClass().equals(host.getClass()); if(!is_equal) return; }} before -> NamedNewStrategyRef, newstrategyname, NewStrategyName {{ if (is_equal) { NamedNewStrategyRef obj = (NamedNewStrategyRef) history.peek(); Object temp14 = obj.get_newstrategyname(); if(temp14==null) { is_equal = false; return; } history.push(temp14); } }} after -> NamedNewStrategyRef, newstrategyname, NewStrategyName {{ if (is_equal) history.pop(); }} before -> NamedNewStrategyRef, actuals, Actuals {{ if (is_equal) { NamedNewStrategyRef obj = (NamedNewStrategyRef) history.peek(); Object temp15 = obj.get_actuals(); if(temp15==null) { is_equal = false; return; } history.push(temp15); } }} after -> NamedNewStrategyRef, actuals, Actuals {{ if (is_equal) history.pop(); }} before NamedNewStrategyRef {{ Object obj = history.peek(); is_equal = is_equal && obj.getClass().equals(host.getClass()); if(!is_equal) return; }} before -> OrderedNewStrategy, newstrategy_plist, NewStrategy_PList {{ if (is_equal) { OrderedNewStrategy obj = (OrderedNewStrategy) history.peek(); Object temp16 = obj.get_newstrategy_plist(); if(temp16==null) { is_equal = false; return; } history.push(temp16); } }} after -> OrderedNewStrategy, newstrategy_plist, NewStrategy_PList {{ if (is_equal) history.pop(); }} before OrderedNewStrategy {{ Object obj = history.peek(); is_equal = is_equal && obj.getClass().equals(host.getClass()); if(!is_equal) return; }} before -> OrderedWithBypassingNewStrategy, first, NewStrategy {{ if (is_equal) { OrderedWithBypassingNewStrategy obj = (OrderedWithBypassingNewStrategy) history.peek(); Object temp17 = obj.get_first(); if(temp17==null) { is_equal = false; return; } history.push(temp17); } }} after -> OrderedWithBypassingNewStrategy, first, NewStrategy {{ if (is_equal) history.pop(); }} before -> OrderedWithBypassingNewStrategy, bypassingnewstrategy_list, BypassingNewStrategy_List {{ if (is_equal) { OrderedWithBypassingNewStrategy obj = (OrderedWithBypassingNewStrategy) history.peek(); Object temp18 = obj.get_bypassingnewstrategy_list(); if(temp18==null) { is_equal = false; return; } history.push(temp18); } }} after -> OrderedWithBypassingNewStrategy, bypassingnewstrategy_list, BypassingNewStrategy_List {{ if (is_equal) history.pop(); }} before OrderedWithBypassingNewStrategy {{ Object obj = history.peek(); is_equal = is_equal && obj.getClass().equals(host.getClass()); if(!is_equal) return; }} before -> BypassingNewStrategy, primitivenewstrategy, PrimitiveNewStrategy {{ if (is_equal) { BypassingNewStrategy obj = (BypassingNewStrategy) history.peek(); Object temp19 = obj.get_primitivenewstrategy(); if(temp19==null) { is_equal = false; return; } history.push(temp19); } }} after -> BypassingNewStrategy, primitivenewstrategy, PrimitiveNewStrategy {{ if (is_equal) history.pop(); }} before -> BypassingNewStrategy, newstrategy, NewStrategy {{ if (is_equal) { BypassingNewStrategy obj = (BypassingNewStrategy) history.peek(); Object temp20 = obj.get_newstrategy(); if(temp20==null) { is_equal = false; return; } history.push(temp20); } }} after -> BypassingNewStrategy, newstrategy, NewStrategy {{ if (is_equal) history.pop(); }} before BypassingNewStrategy {{ Object obj = history.peek(); is_equal = is_equal && obj.getClass().equals(host.getClass()); if(!is_equal) return; }} before -> OptionalNewStrategy, newstrategy, NewStrategy {{ if (is_equal) { OptionalNewStrategy obj = (OptionalNewStrategy) history.peek(); Object temp21 = obj.get_newstrategy(); if(temp21==null) { is_equal = false; return; } history.push(temp21); } }} after -> OptionalNewStrategy, newstrategy, NewStrategy {{ if (is_equal) history.pop(); }} before OptionalNewStrategy {{ Object obj = history.peek(); is_equal = is_equal && obj.getClass().equals(host.getClass()); if(!is_equal) return; }} before -> ZeroOrMoreNewStrategy, newstrategy, NewStrategy {{ if (is_equal) { ZeroOrMoreNewStrategy obj = (ZeroOrMoreNewStrategy) history.peek(); Object temp22 = obj.get_newstrategy(); if(temp22==null) { is_equal = false; return; } history.push(temp22); } }} after -> ZeroOrMoreNewStrategy, newstrategy, NewStrategy {{ if (is_equal) history.pop(); }} before ZeroOrMoreNewStrategy {{ Object obj = history.peek(); is_equal = is_equal && obj.getClass().equals(host.getClass()); if(!is_equal) return; }} before Modifiers {{ Object obj = history.peek(); is_equal = is_equal && obj.getClass().equals(host.getClass()); if(!is_equal) return; }} before Formals {{ Object obj = history.peek(); is_equal = is_equal && obj.getClass().equals(host.getClass()); if(!is_equal) return; }} before Actuals {{ Object obj = history.peek(); is_equal = is_equal && obj.getClass().equals(host.getClass()); if(!is_equal) return; }} before NewStrategyName {{ Object obj = history.peek(); is_equal = is_equal && obj.getClass().equals(host.getClass()); if(!is_equal) return; Object temp23 = host.get_ident(); Object temp24 = ((NewStrategyName) obj).get_ident(); if(temp23 == null && temp24 == null) {} else if(temp23 == null || temp24 == null || !temp23.equals(temp24)) { is_equal = false; return; } }} before PointcutName {{ Object obj = history.peek(); is_equal = is_equal && obj.getClass().equals(host.getClass()); if(!is_equal) return; Object temp25 = host.get_ident(); Object temp26 = ((PointcutName) obj).get_ident(); if(temp25 == null && temp26 == null) {} else if(temp25 == null || temp26 == null || !temp25.equals(temp26)) { is_equal = false; return; } }} before PrintVisitor {{ Object obj = history.peek(); is_equal = is_equal && obj.getClass().equals(host.getClass()); if(!is_equal) return; is_equal = is_equal && host.get_indent() == ((PrintVisitor) obj).get_indent(); is_equal = is_equal && host.get_needSpace() == ((PrintVisitor) obj).get_needSpace(); }} before CopyVisitor {{ Object obj = history.peek(); is_equal = is_equal && obj.getClass().equals(host.getClass()); if(!is_equal) return; Object temp27 = host.get_copy(); Object temp28 = ((CopyVisitor) obj).get_copy(); if(temp27 == null && temp28 == null) {} else if(temp27 == null || temp28 == null || !temp27.equals(temp28)) { is_equal = false; return; } }} before SubgraphVisitor {{ Object obj = history.peek(); is_equal = is_equal && obj.getClass().equals(host.getClass()); if(!is_equal) return; is_equal = is_equal && host.get_is_equal() == ((SubgraphVisitor) obj).get_is_equal(); }} before EqualVisitor {{ Object obj = history.peek(); is_equal = is_equal && obj.getClass().equals(host.getClass()); if(!is_equal) return; is_equal = is_equal && host.get_is_equal() == ((EqualVisitor) obj).get_is_equal(); }} before DisplayVisitor {{ Object obj = history.peek(); is_equal = is_equal && obj.getClass().equals(host.getClass()); if(!is_equal) return; is_equal = is_equal && host.get_indent() == ((DisplayVisitor) obj).get_indent(); }} before TraceVisitor {{ Object obj = history.peek(); is_equal = is_equal && obj.getClass().equals(host.getClass()); if(!is_equal) return; is_equal = is_equal && host.get_indent() == ((TraceVisitor) obj).get_indent(); }} before UniversalVisitor {{ Object obj = history.peek(); is_equal = is_equal && obj.getClass().equals(host.getClass()); if(!is_equal) return; }} before -> NewStrategy_PList, first, Nonempty_NewStrategy_PList {{ if (is_equal) { NewStrategy_PList obj = (NewStrategy_PList) history.peek(); Object temp29 = obj.get_first(); if(temp29==null) { is_equal = false; return; } history.push(temp29); } }} after -> NewStrategy_PList, first, Nonempty_NewStrategy_PList {{ if (is_equal) history.pop(); }} before NewStrategy_PList {{ Object obj = history.peek(); is_equal = is_equal && obj.getClass().equals(host.getClass()); if(!is_equal) return; }} before -> HistoryPcd_PList, first, Nonempty_HistoryPcd_PList {{ if (is_equal) { HistoryPcd_PList obj = (HistoryPcd_PList) history.peek(); Object temp30 = obj.get_first(); if(temp30==null) { is_equal = false; return; } history.push(temp30); } }} after -> HistoryPcd_PList, first, Nonempty_HistoryPcd_PList {{ if (is_equal) history.pop(); }} before HistoryPcd_PList {{ Object obj = history.peek(); is_equal = is_equal && obj.getClass().equals(host.getClass()); if(!is_equal) return; }} before -> OrderedNewStrategy_BarList, first, Nonempty_OrderedNewStrategy_BarList {{ if (is_equal) { OrderedNewStrategy_BarList obj = (OrderedNewStrategy_BarList) history.peek(); Object temp31 = obj.get_first(); if(temp31==null) { is_equal = false; return; } history.push(temp31); } }} after -> OrderedNewStrategy_BarList, first, Nonempty_OrderedNewStrategy_BarList {{ if (is_equal) history.pop(); }} before OrderedNewStrategy_BarList {{ Object obj = history.peek(); is_equal = is_equal && obj.getClass().equals(host.getClass()); if(!is_equal) return; }} before -> BypassingNewStrategy_List, first, Nonempty_BypassingNewStrategy_List {{ if (is_equal) { BypassingNewStrategy_List obj = (BypassingNewStrategy_List) history.peek(); Object temp32 = obj.get_first(); if(temp32==null) { is_equal = false; return; } history.push(temp32); } }} after -> BypassingNewStrategy_List, first, Nonempty_BypassingNewStrategy_List {{ if (is_equal) history.pop(); }} before BypassingNewStrategy_List {{ Object obj = history.peek(); is_equal = is_equal && obj.getClass().equals(host.getClass()); if(!is_equal) return; }} before -> Nonempty_NewStrategy_PList, it, NewStrategy {{ if (is_equal) { Nonempty_NewStrategy_PList obj = (Nonempty_NewStrategy_PList) history.peek(); Object temp33 = obj.get_it(); if(temp33==null) { is_equal = false; return; } history.push(temp33); } }} after -> Nonempty_NewStrategy_PList, it, NewStrategy {{ if (is_equal) history.pop(); }} before -> Nonempty_NewStrategy_PList, next, Nonempty_NewStrategy_PList {{ if (is_equal) { Nonempty_NewStrategy_PList obj = (Nonempty_NewStrategy_PList) history.peek(); Object temp34 = obj.get_next(); if(temp34==null) { is_equal = false; return; } history.push(temp34); } }} after -> Nonempty_NewStrategy_PList, next, Nonempty_NewStrategy_PList {{ if (is_equal) history.pop(); }} before Nonempty_NewStrategy_PList {{ Object obj = history.peek(); is_equal = is_equal && obj.getClass().equals(host.getClass()); if(!is_equal) return; }} before -> Nonempty_HistoryPcd_PList, it, HistoryPcd {{ if (is_equal) { Nonempty_HistoryPcd_PList obj = (Nonempty_HistoryPcd_PList) history.peek(); Object temp35 = obj.get_it(); if(temp35==null) { is_equal = false; return; } history.push(temp35); } }} after -> Nonempty_HistoryPcd_PList, it, HistoryPcd {{ if (is_equal) history.pop(); }} before -> Nonempty_HistoryPcd_PList, next, Nonempty_HistoryPcd_PList {{ if (is_equal) { Nonempty_HistoryPcd_PList obj = (Nonempty_HistoryPcd_PList) history.peek(); Object temp36 = obj.get_next(); if(temp36==null) { is_equal = false; return; } history.push(temp36); } }} after -> Nonempty_HistoryPcd_PList, next, Nonempty_HistoryPcd_PList {{ if (is_equal) history.pop(); }} before Nonempty_HistoryPcd_PList {{ Object obj = history.peek(); is_equal = is_equal && obj.getClass().equals(host.getClass()); if(!is_equal) return; }} before -> Nonempty_OrderedNewStrategy_BarList, it, OrderedNewStrategy {{ if (is_equal) { Nonempty_OrderedNewStrategy_BarList obj = (Nonempty_OrderedNewStrategy_BarList) history.peek(); Object temp37 = obj.get_it(); if(temp37==null) { is_equal = false; return; } history.push(temp37); } }} after -> Nonempty_OrderedNewStrategy_BarList, it, OrderedNewStrategy {{ if (is_equal) history.pop(); }} before -> Nonempty_OrderedNewStrategy_BarList, next, Nonempty_OrderedNewStrategy_BarList {{ if (is_equal) { Nonempty_OrderedNewStrategy_BarList obj = (Nonempty_OrderedNewStrategy_BarList) history.peek(); Object temp38 = obj.get_next(); if(temp38==null) { is_equal = false; return; } history.push(temp38); } }} after -> Nonempty_OrderedNewStrategy_BarList, next, Nonempty_OrderedNewStrategy_BarList {{ if (is_equal) history.pop(); }} before Nonempty_OrderedNewStrategy_BarList {{ Object obj = history.peek(); is_equal = is_equal && obj.getClass().equals(host.getClass()); if(!is_equal) return; }} before -> Nonempty_BypassingNewStrategy_List, it, BypassingNewStrategy {{ if (is_equal) { Nonempty_BypassingNewStrategy_List obj = (Nonempty_BypassingNewStrategy_List) history.peek(); Object temp39 = obj.get_it(); if(temp39==null) { is_equal = false; return; } history.push(temp39); } }} after -> Nonempty_BypassingNewStrategy_List, it, BypassingNewStrategy {{ if (is_equal) history.pop(); }} before -> Nonempty_BypassingNewStrategy_List, next, Nonempty_BypassingNewStrategy_List {{ if (is_equal) { Nonempty_BypassingNewStrategy_List obj = (Nonempty_BypassingNewStrategy_List) history.peek(); Object temp40 = obj.get_next(); if(temp40==null) { is_equal = false; return; } history.push(temp40); } }} after -> Nonempty_BypassingNewStrategy_List, next, Nonempty_BypassingNewStrategy_List {{ if (is_equal) history.pop(); }} before Nonempty_BypassingNewStrategy_List {{ Object obj = history.peek(); is_equal = is_equal && obj.getClass().equals(host.getClass()); if(!is_equal) return; }} return boolean {{ is_equal }} }