final class org.apache.isis.commons.internal.debug.xray._CallStackMerger extends java.lang.Object
{
private final org.apache.isis.commons.collections.Can logEntries;
private final java.util.concurrent.atomic.AtomicBoolean initialized;
private org.apache.isis.commons.internal.debug.xray.graphics.CallStackDiagram callStackDiagram;
void render(javax.swing.JTextArea)
{
org.apache.isis.commons.internal.debug.xray.graphics.CallStackDiagram v;
java.util.concurrent.atomic.AtomicBoolean v, v;
org.apache.isis.commons.internal.debug.xray._CallStackMerger v;
javax.swing.JTextArea v;
boolean v;
v := @this: org.apache.isis.commons.internal.debug.xray._CallStackMerger;
v := @parameter: javax.swing.JTextArea;
v = v.<org.apache.isis.commons.internal.debug.xray._CallStackMerger: java.util.concurrent.atomic.AtomicBoolean initialized>;
v = virtualinvoke v.<java.util.concurrent.atomic.AtomicBoolean: boolean get()>();
if v != 0 goto label;
specialinvoke v.<org.apache.isis.commons.internal.debug.xray._CallStackMerger: void initialize()>();
v = v.<org.apache.isis.commons.internal.debug.xray._CallStackMerger: java.util.concurrent.atomic.AtomicBoolean initialized>;
virtualinvoke v.<java.util.concurrent.atomic.AtomicBoolean: void set(boolean)>(1);
label:
v = v.<org.apache.isis.commons.internal.debug.xray._CallStackMerger: org.apache.isis.commons.internal.debug.xray.graphics.CallStackDiagram callStackDiagram>;
virtualinvoke v.<org.apache.isis.commons.internal.debug.xray.graphics.CallStackDiagram: void render(javax.swing.JTextArea)>(v);
return;
}
private void initialize()
{
org.apache.isis.commons.internal.debug.xray.graphics.CallStackDiagram v;
org.apache.isis.commons.collections.Can v;
java.util.HashMap v;
java.util.ArrayList v;
java.util.HashSet v;
java.util.function.Consumer v;
java.lang.StringBuilder v;
org.apache.isis.commons.internal.debug.xray._CallStackMerger v;
java.lang.String v;
org.apache.isis.commons.internal.debug.xray._CallStackMerger$IntTreeNode v;
java.util.function.IntFunction v;
v := @this: org.apache.isis.commons.internal.debug.xray._CallStackMerger;
v = staticinvoke <org.apache.isis.commons.internal.collections._Sets: java.util.HashSet newHashSet()>();
v = staticinvoke <org.apache.isis.commons.internal.collections._Maps: java.util.HashMap newHashMap()>();
v = new java.util.ArrayList;
specialinvoke v.<java.util.ArrayList: void <init>()>();
v = v.<org.apache.isis.commons.internal.debug.xray._CallStackMerger: org.apache.isis.commons.collections.Can logEntries>;
v = staticinvoke <org.apache.isis.commons.internal.debug.xray._CallStackMerger$lambda_initialize_3__281: java.util.function.Consumer bootstrap$(java.util.ArrayList,java.util.HashSet,java.util.HashMap)>(v, v, v);
interfaceinvoke v.<org.apache.isis.commons.collections.Can: void forEach(java.util.function.Consumer)>(v);
v = staticinvoke <org.apache.isis.commons.internal.debug.xray._CallStackMerger: org.apache.isis.commons.internal.debug.xray._CallStackMerger$IntTreeNode merge(java.util.List)>(v);
v = new org.apache.isis.commons.internal.debug.xray.graphics.CallStackDiagram;
v = staticinvoke <org.apache.isis.commons.internal.debug.xray._CallStackMerger$lambda_initialize_4__282: java.util.function.IntFunction bootstrap$(java.util.HashMap)>(v);
v = specialinvoke v.<org.apache.isis.commons.internal.debug.xray._CallStackMerger$IntTreeNode: java.lang.StringBuilder print(java.util.function.IntFunction)>(v);
v = virtualinvoke v.<java.lang.StringBuilder: java.lang.String toString()>();
specialinvoke v.<org.apache.isis.commons.internal.debug.xray.graphics.CallStackDiagram: void <init>(java.lang.String)>(v);
v.<org.apache.isis.commons.internal.debug.xray._CallStackMerger: org.apache.isis.commons.internal.debug.xray.graphics.CallStackDiagram callStackDiagram> = v;
return;
}
static org.apache.isis.commons.internal.debug.xray._CallStackMerger$IntTreeNode merge(java.util.List)
{
java.util.function.Consumer v;
java.util.List v;
int v;
org.apache.isis.commons.internal.debug.xray._CallStackMerger$IntTreeNode v;
v := @parameter: java.util.List;
v = (int) -1;
v = staticinvoke <org.apache.isis.commons.internal.debug.xray._CallStackMerger$IntTreeNode: org.apache.isis.commons.internal.debug.xray._CallStackMerger$IntTreeNode newRoot(int)>(v);
v = staticinvoke <org.apache.isis.commons.internal.debug.xray._CallStackMerger$lambda_merge_6__283: java.util.function.Consumer bootstrap$(org.apache.isis.commons.internal.debug.xray._CallStackMerger$IntTreeNode)>(v);
interfaceinvoke v.<java.util.List: void forEach(java.util.function.Consumer)>(v);
return v;
}
public void <init>(org.apache.isis.commons.collections.Can)
{
java.util.concurrent.atomic.AtomicBoolean v;
org.apache.isis.commons.internal.debug.xray._CallStackMerger v;
org.apache.isis.commons.collections.Can v;
v := @this: org.apache.isis.commons.internal.debug.xray._CallStackMerger;
v := @parameter: org.apache.isis.commons.collections.Can;
specialinvoke v.<java.lang.Object: void <init>()>();
v = new java.util.concurrent.atomic.AtomicBoolean;
specialinvoke v.<java.util.concurrent.atomic.AtomicBoolean: void <init>(boolean)>(0);
v.<org.apache.isis.commons.internal.debug.xray._CallStackMerger: java.util.concurrent.atomic.AtomicBoolean initialized> = v;
v.<org.apache.isis.commons.internal.debug.xray._CallStackMerger: org.apache.isis.commons.collections.Can logEntries> = v;
return;
}
}