From 126dbbe37d2d0b8d00193ba613459e35413139a5 Mon Sep 17 00:00:00 2001 From: Johannes Mey <johannes.mey@tu-dresden.de> Date: Wed, 20 Mar 2019 17:29:45 +0100 Subject: [PATCH] improve resolve all and do not call it automatically --- src/main/jastadd/Backend.jadd | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/src/main/jastadd/Backend.jadd b/src/main/jastadd/Backend.jadd index 1425ec6..fe97cef 100644 --- a/src/main/jastadd/Backend.jadd +++ b/src/main/jastadd/Backend.jadd @@ -957,7 +957,7 @@ aspect NameResolutionHelper { sb.append(ind(1) + "// enforce resolving in the entire subtree\n"); sb.append(ind(1) + "public void ASTNode.treeResolveAll() {\n"); sb.append(ind(2) + "if (children != null) {\n"); - sb.append(ind(3) + "for (int i = 0; i < children.length; ++i) {\n"); + sb.append(ind(3) + "for (int i = 0; i < numChildren; ++i) {\n"); sb.append(ind(4) + "ASTNode child = children[i];\n"); sb.append(ind(4) + "if (child != null) {\n"); sb.append(ind(5) + "child.treeResolveAll();\n"); @@ -1212,7 +1212,6 @@ aspect Serializer { sb.append(ind(3) + "com.fasterxml.jackson.core.JsonFactory factory = mapper.getFactory();\n"); sb.append(ind(3) + "com.fasterxml.jackson.core.JsonParser parser = factory.createParser(file);\n"); sb.append(ind(3) + getID() + " result = deserialize((com.fasterxml.jackson.databind.JsonNode)mapper.readTree(parser));\n"); - sb.append(ind(3) + "result.treeResolveAll();\n"); sb.append(ind(3) + "return result;\n"); sb.append(ind(2) + "} catch (java.io.IOException e) {\n"); sb.append(ind(3) + "throw new DeserializationException(\"unable to deserialize \" + file.getAbsolutePath(), e);\n"); -- GitLab