diff --git a/rt-key/src/main/java/edu/kit/iti/formal/psdbg/LabelFactory.java b/rt-key/src/main/java/edu/kit/iti/formal/psdbg/LabelFactory.java index 5e1f036e2240c058f1a04ebae359be69756d9102..3c90389bce5396d6802531e058725deefe58f0bf 100644 --- a/rt-key/src/main/java/edu/kit/iti/formal/psdbg/LabelFactory.java +++ b/rt-key/src/main/java/edu/kit/iti/formal/psdbg/LabelFactory.java @@ -3,6 +3,7 @@ package edu.kit.iti.formal.psdbg; import de.uka.ilkd.key.proof.Goal; import de.uka.ilkd.key.proof.Node; import de.uka.ilkd.key.proof.Proof; +import lombok.val; import org.apache.commons.lang.ArrayUtils; import org.key_project.util.collection.ImmutableList; @@ -23,7 +24,6 @@ public class LabelFactory { public static String RANGE_SEPARATOR = " -- "; - /** * Create Label for goalview according to function that is passed. * The following functions can be given: @@ -58,7 +58,20 @@ public class LabelFactory { } public static String getBranchingLabel(Node node) { - return constructLabel(node, n -> n.getNodeInfo().getBranchLabel()); + StringBuilder sb = new StringBuilder(); + while (node != null) { + val p = node.parent(); + if (p != null && p.childrenCount() != 1) { + val branchLabel = node.getNodeInfo().getBranchLabel(); + sb.append(branchLabel != null && !branchLabel.isEmpty() + ? branchLabel + : "#" + p.getChildNr(node)) + .append(SEPARATOR); + } + node = p; + } + sb.append("$$"); + return sb.toString(); } public static String getNameLabel(Node node) {