diff --git a/src/template/incremental/Notification.tt b/src/template/incremental/Notification.tt index d32ccae911f4e87f0943bf6effcd75e40cace1fb..8f8d5fb0a18c2a8cb1efbad0e73c66180e06e2c6 100644 --- a/src/template/incremental/Notification.tt +++ b/src/template/incremental/Notification.tt @@ -287,6 +287,9 @@ $endif $AttrResetVisit $AttrResetCache $(AttrSign)_handler.notifyDependencies(); + $if (TraceFlush) + state().trace().flushIncAttr(this, "$AttrSign", "", ""); + $endif $if(!#isASTNodeDecl) super.reactToDependencyChange(attrID, _parameters); $endif diff --git a/src/template/trace/Tracer.tt b/src/template/trace/Tracer.tt index cc565cd09de287ef3a01ad70f540a912fde207f3..0d19cde6937335562f2b73bf8474a4fd7ab82695 100644 --- a/src/template/trace/Tracer.tt +++ b/src/template/trace/Tracer.tt @@ -78,7 +78,8 @@ public static class Trace { // Flag: --tracing=flush FLUSH_ATTR, FLUSH_REWRITE, - FLUSH_REWRITE_INIT; + FLUSH_REWRITE_INIT, + INC_FLUSH_ATTR; } /** @@ -324,6 +325,13 @@ public static class Trace { public void flushAttr($ASTNode node, String attr, Object params, Object value) { receiver.accept($StateClass.Trace.Event.FLUSH_ATTR, node, attr, params, value); } + + /** + * Trace that an attribute was flushed by incremental evaluation. + */ + public void flushIncAttr($ASTNode node, String attr, Object params, Object value) { + receiver.accept($StateClass.Trace.Event.INC_FLUSH_ATTR, node, attr, params, value); + } } $endif ]]