From 6558af9d8c39d3162de95db1bd8598ab43f64d5c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Emma=20S=C3=B6derberg?= <emma.m.soderberg@gmail.com> Date: Mon, 25 Jan 2021 09:56:51 +0100 Subject: [PATCH] Fix inc param debug mode for circular attributes --- src/jastadd/incremental/IncrementalDebug.jadd | 1 + src/template/incremental/Debug.tt | 4 ++++ 2 files changed, 5 insertions(+) diff --git a/src/jastadd/incremental/IncrementalDebug.jadd b/src/jastadd/incremental/IncrementalDebug.jadd index 47d5801a..3055f0a8 100644 --- a/src/jastadd/incremental/IncrementalDebug.jadd +++ b/src/jastadd/incremental/IncrementalDebug.jadd @@ -122,6 +122,7 @@ aspect IncrementalDebug { TemplateContext tt = templateContext(); for (AttrDecl attr : listOfCachedAttributes()) { tt.bind("IsParameterized", attr.getNumParameter() > 0); + tt.bind("IsCircular", attr.isCircular()); tt.bind("PrintAsObject", attr.isPrimitive() || attr.getType().equals("String")); tt.bind("AttrSign", attr.signature()); res.append(tt.expand("ASTDecl.dumpCachedAttributeValue")); diff --git a/src/template/incremental/Debug.tt b/src/template/incremental/Debug.tt index a10cbe76..a179a966 100644 --- a/src/template/incremental/Debug.tt +++ b/src/template/incremental/Debug.tt @@ -139,7 +139,11 @@ if ($(AttrSign)_values != null) { } } $else +$if (IsCircular) +if ($(AttrSign)_computed == $StateClass.NON_CYCLE || $(AttrSign)_computed == state().cycle()) { +$else if ($(AttrSign)_computed) { +$endif $if (PrintAsObject) System.out.println("value(" + relativeNodeID() + ":$(AttrSign), " + $(AttrSign)_value + ")"); $else -- GitLab