public class org.stringtemplate.v4.gui.STViz
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: org.stringtemplate.v4.gui.STViz
super_class: java.lang.Object
{
protected static final java.lang.String WINDOWS_LINE_ENDINGS;
descriptor: Ljava/lang/String;
flags: (0x001c) ACC_PROTECTED, ACC_STATIC, ACC_FINAL
ConstantValue: "WINDOWS_LINE_ENDINGS"
public org.stringtemplate.v4.debug.EvalTemplateEvent root;
descriptor: Lorg/stringtemplate/v4/debug/EvalTemplateEvent;
flags: (0x0001) ACC_PUBLIC
public org.stringtemplate.v4.debug.InterpEvent currentEvent;
descriptor: Lorg/stringtemplate/v4/debug/InterpEvent;
flags: (0x0001) ACC_PUBLIC
public org.stringtemplate.v4.InstanceScope currentScope;
descriptor: Lorg/stringtemplate/v4/InstanceScope;
flags: (0x0001) ACC_PUBLIC
public java.util.List<org.stringtemplate.v4.debug.InterpEvent> allEvents;
descriptor: Ljava/util/List;
flags: (0x0001) ACC_PUBLIC
Signature: Ljava/util/List<Lorg/stringtemplate/v4/debug/InterpEvent;>;
public org.stringtemplate.v4.gui.JTreeSTModel tmodel;
descriptor: Lorg/stringtemplate/v4/gui/JTreeSTModel;
flags: (0x0001) ACC_PUBLIC
public org.stringtemplate.v4.misc.ErrorManager errMgr;
descriptor: Lorg/stringtemplate/v4/misc/ErrorManager;
flags: (0x0001) ACC_PUBLIC
public org.stringtemplate.v4.Interpreter interp;
descriptor: Lorg/stringtemplate/v4/Interpreter;
flags: (0x0001) ACC_PUBLIC
public java.lang.String output;
descriptor: Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
public java.util.List<java.lang.String> trace;
descriptor: Ljava/util/List;
flags: (0x0001) ACC_PUBLIC
Signature: Ljava/util/List<Ljava/lang/String;>;
public java.util.List<org.stringtemplate.v4.misc.STMessage> errors;
descriptor: Ljava/util/List;
flags: (0x0001) ACC_PUBLIC
Signature: Ljava/util/List<Lorg/stringtemplate/v4/misc/STMessage;>;
public org.stringtemplate.v4.gui.STViewFrame viewFrame;
descriptor: Lorg/stringtemplate/v4/gui/STViewFrame;
flags: (0x0001) ACC_PUBLIC
private final java.util.concurrent.atomic.AtomicInteger updateDepth;
descriptor: Ljava/util/concurrent/atomic/AtomicInteger;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
public void <init>(org.stringtemplate.v4.misc.ErrorManager, org.stringtemplate.v4.debug.EvalTemplateEvent, java.lang.String, org.stringtemplate.v4.Interpreter, java.util.List<java.lang.String>, java.util.List<org.stringtemplate.v4.misc.STMessage>);
descriptor: (Lorg/stringtemplate/v4/misc/ErrorManager;Lorg/stringtemplate/v4/debug/EvalTemplateEvent;Ljava/lang/String;Lorg/stringtemplate/v4/Interpreter;Ljava/util/List;Ljava/util/List;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=7, args_size=7
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 start local 6 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
new java.util.concurrent.atomic.AtomicInteger
dup
invokespecial java.util.concurrent.atomic.AtomicInteger.<init>:()V
putfield org.stringtemplate.v4.gui.STViz.updateDepth:Ljava/util/concurrent/atomic/AtomicInteger;
2: aload 0
aload 1
putfield org.stringtemplate.v4.gui.STViz.errMgr:Lorg/stringtemplate/v4/misc/ErrorManager;
3: aload 0
aload 2
putfield org.stringtemplate.v4.gui.STViz.currentEvent:Lorg/stringtemplate/v4/debug/InterpEvent;
4: aload 0
aload 2
getfield org.stringtemplate.v4.debug.EvalTemplateEvent.scope:Lorg/stringtemplate/v4/InstanceScope;
putfield org.stringtemplate.v4.gui.STViz.currentScope:Lorg/stringtemplate/v4/InstanceScope;
5: aload 0
aload 3
putfield org.stringtemplate.v4.gui.STViz.output:Ljava/lang/String;
6: aload 0
aload 4
putfield org.stringtemplate.v4.gui.STViz.interp:Lorg/stringtemplate/v4/Interpreter;
7: aload 0
aload 4
invokevirtual org.stringtemplate.v4.Interpreter.getEvents:()Ljava/util/List;
putfield org.stringtemplate.v4.gui.STViz.allEvents:Ljava/util/List;
8: aload 0
aload 5
putfield org.stringtemplate.v4.gui.STViz.trace:Ljava/util/List;
9: aload 0
aload 6
putfield org.stringtemplate.v4.gui.STViz.errors:Ljava/util/List;
10: return
end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 11 0 this Lorg/stringtemplate/v4/gui/STViz;
0 11 1 errMgr Lorg/stringtemplate/v4/misc/ErrorManager;
0 11 2 root Lorg/stringtemplate/v4/debug/EvalTemplateEvent;
0 11 3 output Ljava/lang/String;
0 11 4 interp Lorg/stringtemplate/v4/Interpreter;
0 11 5 trace Ljava/util/List<Ljava/lang/String;>;
0 11 6 errors Ljava/util/List<Lorg/stringtemplate/v4/misc/STMessage;>;
Signature: (Lorg/stringtemplate/v4/misc/ErrorManager;Lorg/stringtemplate/v4/debug/EvalTemplateEvent;Ljava/lang/String;Lorg/stringtemplate/v4/Interpreter;Ljava/util/List<Ljava/lang/String;>;Ljava/util/List<Lorg/stringtemplate/v4/misc/STMessage;>;)V
MethodParameters:
Name Flags
errMgr
root
output
interp
trace
errors
public void open();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=7, locals=7, args_size=1
start local 0 0: aload 0
new org.stringtemplate.v4.gui.STViewFrame
dup
invokespecial org.stringtemplate.v4.gui.STViewFrame.<init>:()V
putfield org.stringtemplate.v4.gui.STViz.viewFrame:Lorg/stringtemplate/v4/gui/STViewFrame;
1: aload 0
aload 0
getfield org.stringtemplate.v4.gui.STViz.currentScope:Lorg/stringtemplate/v4/InstanceScope;
aload 0
getfield org.stringtemplate.v4.gui.STViz.viewFrame:Lorg/stringtemplate/v4/gui/STViewFrame;
invokevirtual org.stringtemplate.v4.gui.STViz.updateStack:(Lorg/stringtemplate/v4/InstanceScope;Lorg/stringtemplate/v4/gui/STViewFrame;)V
2: aload 0
aload 0
getfield org.stringtemplate.v4.gui.STViz.currentScope:Lorg/stringtemplate/v4/InstanceScope;
aload 0
getfield org.stringtemplate.v4.gui.STViz.viewFrame:Lorg/stringtemplate/v4/gui/STViewFrame;
invokevirtual org.stringtemplate.v4.gui.STViz.updateAttributes:(Lorg/stringtemplate/v4/InstanceScope;Lorg/stringtemplate/v4/gui/STViewFrame;)V
3: aload 0
getfield org.stringtemplate.v4.gui.STViz.currentScope:Lorg/stringtemplate/v4/InstanceScope;
getfield org.stringtemplate.v4.InstanceScope.events:Ljava/util/List;
astore 1
start local 1 4: aload 0
new org.stringtemplate.v4.gui.JTreeSTModel
dup
aload 0
getfield org.stringtemplate.v4.gui.STViz.interp:Lorg/stringtemplate/v4/Interpreter;
aload 1
aload 1
invokeinterface java.util.List.size:()I
iconst_1
isub
invokeinterface java.util.List.get:(I)Ljava/lang/Object;
checkcast org.stringtemplate.v4.debug.EvalTemplateEvent
invokespecial org.stringtemplate.v4.gui.JTreeSTModel.<init>:(Lorg/stringtemplate/v4/Interpreter;Lorg/stringtemplate/v4/debug/EvalTemplateEvent;)V
putfield org.stringtemplate.v4.gui.STViz.tmodel:Lorg/stringtemplate/v4/gui/JTreeSTModel;
5: aload 0
getfield org.stringtemplate.v4.gui.STViz.viewFrame:Lorg/stringtemplate/v4/gui/STViewFrame;
getfield org.stringtemplate.v4.gui.STViewFrame.tree:Ljavax/swing/JTree;
aload 0
getfield org.stringtemplate.v4.gui.STViz.tmodel:Lorg/stringtemplate/v4/gui/JTreeSTModel;
invokevirtual javax.swing.JTree.setModel:(Ljavax/swing/tree/TreeModel;)V
6: aload 0
getfield org.stringtemplate.v4.gui.STViz.viewFrame:Lorg/stringtemplate/v4/gui/STViewFrame;
getfield org.stringtemplate.v4.gui.STViewFrame.tree:Ljavax/swing/JTree;
7: new org.stringtemplate.v4.gui.STViz$1
dup
aload 0
invokespecial org.stringtemplate.v4.gui.STViz$1.<init>:(Lorg/stringtemplate/v4/gui/STViz;)V
8: invokevirtual javax.swing.JTree.addTreeSelectionListener:(Ljavax/swing/event/TreeSelectionListener;)V
9: new org.stringtemplate.v4.gui.JTreeASTModel
dup
new org.antlr.runtime.tree.CommonTreeAdaptor
dup
invokespecial org.antlr.runtime.tree.CommonTreeAdaptor.<init>:()V
aload 0
getfield org.stringtemplate.v4.gui.STViz.currentScope:Lorg/stringtemplate/v4/InstanceScope;
getfield org.stringtemplate.v4.InstanceScope.st:Lorg/stringtemplate/v4/ST;
getfield org.stringtemplate.v4.ST.impl:Lorg/stringtemplate/v4/compiler/CompiledST;
getfield org.stringtemplate.v4.compiler.CompiledST.ast:Lorg/antlr/runtime/tree/CommonTree;
invokespecial org.stringtemplate.v4.gui.JTreeASTModel.<init>:(Lorg/antlr/runtime/tree/TreeAdaptor;Ljava/lang/Object;)V
astore 2
start local 2 10: aload 0
getfield org.stringtemplate.v4.gui.STViz.viewFrame:Lorg/stringtemplate/v4/gui/STViewFrame;
getfield org.stringtemplate.v4.gui.STViewFrame.ast:Ljavax/swing/JTree;
aload 2
invokevirtual javax.swing.JTree.setModel:(Ljavax/swing/tree/TreeModel;)V
11: aload 0
getfield org.stringtemplate.v4.gui.STViz.viewFrame:Lorg/stringtemplate/v4/gui/STViewFrame;
getfield org.stringtemplate.v4.gui.STViewFrame.ast:Ljavax/swing/JTree;
12: new org.stringtemplate.v4.gui.STViz$2
dup
aload 0
invokespecial org.stringtemplate.v4.gui.STViz$2.<init>:(Lorg/stringtemplate/v4/gui/STViz;)V
13: invokevirtual javax.swing.JTree.addTreeSelectionListener:(Ljavax/swing/event/TreeSelectionListener;)V
14: new org.stringtemplate.v4.gui.STViz$3
dup
aload 0
invokespecial org.stringtemplate.v4.gui.STViz$3.<init>:(Lorg/stringtemplate/v4/gui/STViz;)V
astore 3
start local 3 15: aload 0
getfield org.stringtemplate.v4.gui.STViz.viewFrame:Lorg/stringtemplate/v4/gui/STViewFrame;
getfield org.stringtemplate.v4.gui.STViewFrame.output:Ljavax/swing/JTextPane;
aload 3
invokevirtual javax.swing.JTextPane.addCaretListener:(Ljavax/swing/event/CaretListener;)V
16: aload 0
getfield org.stringtemplate.v4.gui.STViz.errors:Ljava/util/List;
ifnull 17
aload 0
getfield org.stringtemplate.v4.gui.STViz.errors:Ljava/util/List;
invokeinterface java.util.List.size:()I
ifne 19
17: StackMap locals: java.util.List org.stringtemplate.v4.gui.JTreeASTModel javax.swing.event.CaretListener
StackMap stack:
aload 0
getfield org.stringtemplate.v4.gui.STViz.viewFrame:Lorg/stringtemplate/v4/gui/STViewFrame;
getfield org.stringtemplate.v4.gui.STViewFrame.errorScrollPane:Ljavax/swing/JScrollPane;
iconst_0
invokevirtual javax.swing.JScrollPane.setVisible:(Z)V
18: goto 25
19: StackMap locals:
StackMap stack:
new javax.swing.DefaultListModel
dup
invokespecial javax.swing.DefaultListModel.<init>:()V
astore 4
start local 4 20: aload 0
getfield org.stringtemplate.v4.gui.STViz.errors:Ljava/util/List;
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
astore 6
goto 23
StackMap locals: org.stringtemplate.v4.gui.STViz java.util.List org.stringtemplate.v4.gui.JTreeASTModel javax.swing.event.CaretListener javax.swing.DefaultListModel top java.util.Iterator
StackMap stack:
21: aload 6
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast org.stringtemplate.v4.misc.STMessage
astore 5
start local 5 22: aload 4
aload 5
invokevirtual javax.swing.DefaultListModel.addElement:(Ljava/lang/Object;)V
end local 5 23: StackMap locals:
StackMap stack:
aload 6
invokeinterface java.util.Iterator.hasNext:()Z
ifne 21
24: aload 0
getfield org.stringtemplate.v4.gui.STViz.viewFrame:Lorg/stringtemplate/v4/gui/STViewFrame;
getfield org.stringtemplate.v4.gui.STViewFrame.errorList:Ljavax/swing/JList;
aload 4
invokevirtual javax.swing.JList.setModel:(Ljavax/swing/ListModel;)V
end local 4 25: StackMap locals: org.stringtemplate.v4.gui.STViz java.util.List org.stringtemplate.v4.gui.JTreeASTModel javax.swing.event.CaretListener
StackMap stack:
aload 0
getfield org.stringtemplate.v4.gui.STViz.viewFrame:Lorg/stringtemplate/v4/gui/STViewFrame;
getfield org.stringtemplate.v4.gui.STViewFrame.errorList:Ljavax/swing/JList;
26: new org.stringtemplate.v4.gui.STViz$4
dup
aload 0
invokespecial org.stringtemplate.v4.gui.STViz$4.<init>:(Lorg/stringtemplate/v4/gui/STViz;)V
27: invokevirtual javax.swing.JList.addListSelectionListener:(Ljavax/swing/event/ListSelectionListener;)V
28: invokestatic javax.swing.BorderFactory.createEmptyBorder:()Ljavax/swing/border/Border;
astore 4
start local 4 29: aload 0
getfield org.stringtemplate.v4.gui.STViz.viewFrame:Lorg/stringtemplate/v4/gui/STViewFrame;
getfield org.stringtemplate.v4.gui.STViewFrame.treeContentSplitPane:Ljavax/swing/JSplitPane;
aload 4
invokevirtual javax.swing.JSplitPane.setBorder:(Ljavax/swing/border/Border;)V
30: aload 0
getfield org.stringtemplate.v4.gui.STViz.viewFrame:Lorg/stringtemplate/v4/gui/STViewFrame;
getfield org.stringtemplate.v4.gui.STViewFrame.outputTemplateSplitPane:Ljavax/swing/JSplitPane;
aload 4
invokevirtual javax.swing.JSplitPane.setBorder:(Ljavax/swing/border/Border;)V
31: aload 0
getfield org.stringtemplate.v4.gui.STViz.viewFrame:Lorg/stringtemplate/v4/gui/STViewFrame;
getfield org.stringtemplate.v4.gui.STViewFrame.templateBytecodeTraceTabPanel:Ljavax/swing/JTabbedPane;
aload 4
invokevirtual javax.swing.JTabbedPane.setBorder:(Ljavax/swing/border/Border;)V
32: aload 0
getfield org.stringtemplate.v4.gui.STViz.viewFrame:Lorg/stringtemplate/v4/gui/STViewFrame;
getfield org.stringtemplate.v4.gui.STViewFrame.treeAttributesSplitPane:Ljavax/swing/JSplitPane;
aload 4
invokevirtual javax.swing.JSplitPane.setBorder:(Ljavax/swing/border/Border;)V
33: aload 0
getfield org.stringtemplate.v4.gui.STViz.viewFrame:Lorg/stringtemplate/v4/gui/STViewFrame;
getfield org.stringtemplate.v4.gui.STViewFrame.treeContentSplitPane:Ljavax/swing/JSplitPane;
iconst_1
invokevirtual javax.swing.JSplitPane.setOneTouchExpandable:(Z)V
34: aload 0
getfield org.stringtemplate.v4.gui.STViz.viewFrame:Lorg/stringtemplate/v4/gui/STViewFrame;
getfield org.stringtemplate.v4.gui.STViewFrame.outputTemplateSplitPane:Ljavax/swing/JSplitPane;
iconst_1
invokevirtual javax.swing.JSplitPane.setOneTouchExpandable:(Z)V
35: aload 0
getfield org.stringtemplate.v4.gui.STViz.viewFrame:Lorg/stringtemplate/v4/gui/STViewFrame;
getfield org.stringtemplate.v4.gui.STViewFrame.treeContentSplitPane:Ljavax/swing/JSplitPane;
bipush 10
invokevirtual javax.swing.JSplitPane.setDividerSize:(I)V
36: aload 0
getfield org.stringtemplate.v4.gui.STViz.viewFrame:Lorg/stringtemplate/v4/gui/STViewFrame;
getfield org.stringtemplate.v4.gui.STViewFrame.outputTemplateSplitPane:Ljavax/swing/JSplitPane;
bipush 8
invokevirtual javax.swing.JSplitPane.setDividerSize:(I)V
37: aload 0
getfield org.stringtemplate.v4.gui.STViz.viewFrame:Lorg/stringtemplate/v4/gui/STViewFrame;
getfield org.stringtemplate.v4.gui.STViewFrame.treeContentSplitPane:Ljavax/swing/JSplitPane;
iconst_1
invokevirtual javax.swing.JSplitPane.setContinuousLayout:(Z)V
38: aload 0
getfield org.stringtemplate.v4.gui.STViz.viewFrame:Lorg/stringtemplate/v4/gui/STViewFrame;
getfield org.stringtemplate.v4.gui.STViewFrame.treeAttributesSplitPane:Ljavax/swing/JSplitPane;
iconst_1
invokevirtual javax.swing.JSplitPane.setContinuousLayout:(Z)V
39: aload 0
getfield org.stringtemplate.v4.gui.STViz.viewFrame:Lorg/stringtemplate/v4/gui/STViewFrame;
getfield org.stringtemplate.v4.gui.STViewFrame.outputTemplateSplitPane:Ljavax/swing/JSplitPane;
iconst_1
invokevirtual javax.swing.JSplitPane.setContinuousLayout:(Z)V
40: aload 0
getfield org.stringtemplate.v4.gui.STViz.viewFrame:Lorg/stringtemplate/v4/gui/STViewFrame;
iconst_2
invokevirtual org.stringtemplate.v4.gui.STViewFrame.setDefaultCloseOperation:(I)V
41: aload 0
getfield org.stringtemplate.v4.gui.STViz.viewFrame:Lorg/stringtemplate/v4/gui/STViewFrame;
invokevirtual org.stringtemplate.v4.gui.STViewFrame.pack:()V
42: aload 0
getfield org.stringtemplate.v4.gui.STViz.viewFrame:Lorg/stringtemplate/v4/gui/STViewFrame;
sipush 900
sipush 700
invokevirtual org.stringtemplate.v4.gui.STViewFrame.setSize:(II)V
43: aload 0
aload 0
getfield org.stringtemplate.v4.gui.STViz.viewFrame:Lorg/stringtemplate/v4/gui/STViewFrame;
getfield org.stringtemplate.v4.gui.STViewFrame.output:Ljavax/swing/JTextPane;
aload 0
getfield org.stringtemplate.v4.gui.STViz.output:Ljava/lang/String;
invokevirtual org.stringtemplate.v4.gui.STViz.setText:(Ljavax/swing/JEditorPane;Ljava/lang/String;)V
44: aload 0
aload 0
getfield org.stringtemplate.v4.gui.STViz.viewFrame:Lorg/stringtemplate/v4/gui/STViewFrame;
getfield org.stringtemplate.v4.gui.STViewFrame.template:Ljavax/swing/JTextPane;
aload 0
getfield org.stringtemplate.v4.gui.STViz.currentScope:Lorg/stringtemplate/v4/InstanceScope;
getfield org.stringtemplate.v4.InstanceScope.st:Lorg/stringtemplate/v4/ST;
getfield org.stringtemplate.v4.ST.impl:Lorg/stringtemplate/v4/compiler/CompiledST;
getfield org.stringtemplate.v4.compiler.CompiledST.template:Ljava/lang/String;
invokevirtual org.stringtemplate.v4.gui.STViz.setText:(Ljavax/swing/JEditorPane;Ljava/lang/String;)V
45: aload 0
aload 0
getfield org.stringtemplate.v4.gui.STViz.viewFrame:Lorg/stringtemplate/v4/gui/STViewFrame;
getfield org.stringtemplate.v4.gui.STViewFrame.bytecode:Ljavax/swing/JTextPane;
aload 0
getfield org.stringtemplate.v4.gui.STViz.currentScope:Lorg/stringtemplate/v4/InstanceScope;
getfield org.stringtemplate.v4.InstanceScope.st:Lorg/stringtemplate/v4/ST;
getfield org.stringtemplate.v4.ST.impl:Lorg/stringtemplate/v4/compiler/CompiledST;
invokevirtual org.stringtemplate.v4.compiler.CompiledST.disasm:()Ljava/lang/String;
invokevirtual org.stringtemplate.v4.gui.STViz.setText:(Ljavax/swing/JEditorPane;Ljava/lang/String;)V
46: aload 0
aload 0
getfield org.stringtemplate.v4.gui.STViz.viewFrame:Lorg/stringtemplate/v4/gui/STViewFrame;
getfield org.stringtemplate.v4.gui.STViewFrame.trace:Ljavax/swing/JTextPane;
aload 0
getfield org.stringtemplate.v4.gui.STViz.trace:Ljava/util/List;
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
ldc "\n"
invokestatic org.stringtemplate.v4.misc.Misc.join:(Ljava/util/Iterator;Ljava/lang/String;)Ljava/lang/String;
invokevirtual org.stringtemplate.v4.gui.STViz.setText:(Ljavax/swing/JEditorPane;Ljava/lang/String;)V
47: aload 0
getfield org.stringtemplate.v4.gui.STViz.viewFrame:Lorg/stringtemplate/v4/gui/STViewFrame;
iconst_1
invokevirtual org.stringtemplate.v4.gui.STViewFrame.setVisible:(Z)V
48: return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 49 0 this Lorg/stringtemplate/v4/gui/STViz;
4 49 1 events Ljava/util/List<Lorg/stringtemplate/v4/debug/InterpEvent;>;
10 49 2 astModel Lorg/stringtemplate/v4/gui/JTreeASTModel;
15 49 3 caretListenerLabel Ljavax/swing/event/CaretListener;
20 25 4 errorListModel Ljavax/swing/DefaultListModel;
22 23 5 msg Lorg/stringtemplate/v4/misc/STMessage;
29 49 4 empty Ljavax/swing/border/Border;
public void waitForClose();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=3, args_size=1
start local 0 0: new java.lang.Object
dup
invokespecial java.lang.Object.<init>:()V
astore 1
start local 1 1: new org.stringtemplate.v4.gui.STViz$5
dup
aload 0
aload 1
invokespecial org.stringtemplate.v4.gui.STViz$5.<init>:(Lorg/stringtemplate/v4/gui/STViz;Ljava/lang/Object;)V
astore 2
start local 2 2: aload 2
invokevirtual java.lang.Thread.start:()V
3: aload 0
getfield org.stringtemplate.v4.gui.STViz.viewFrame:Lorg/stringtemplate/v4/gui/STViewFrame;
new org.stringtemplate.v4.gui.STViz$6
dup
aload 0
aload 1
invokespecial org.stringtemplate.v4.gui.STViz$6.<init>:(Lorg/stringtemplate/v4/gui/STViz;Ljava/lang/Object;)V
invokevirtual org.stringtemplate.v4.gui.STViewFrame.addWindowListener:(Ljava/awt/event/WindowListener;)V
4: aload 2
invokevirtual java.lang.Thread.join:()V
5: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lorg/stringtemplate/v4/gui/STViz;
1 6 1 lock Ljava/lang/Object;
2 6 2 t Ljava/lang/Thread;
Exceptions:
throws java.lang.InterruptedException
private void updateCurrentST(org.stringtemplate.v4.gui.STViewFrame);
descriptor: (Lorg/stringtemplate/v4/gui/STViewFrame;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=5, args_size=2
start local 0 start local 1 0: aload 0
aload 0
getfield org.stringtemplate.v4.gui.STViz.currentScope:Lorg/stringtemplate/v4/InstanceScope;
aload 1
invokevirtual org.stringtemplate.v4.gui.STViz.updateStack:(Lorg/stringtemplate/v4/InstanceScope;Lorg/stringtemplate/v4/gui/STViewFrame;)V
1: aload 0
aload 0
getfield org.stringtemplate.v4.gui.STViz.currentScope:Lorg/stringtemplate/v4/InstanceScope;
aload 1
invokevirtual org.stringtemplate.v4.gui.STViz.updateAttributes:(Lorg/stringtemplate/v4/InstanceScope;Lorg/stringtemplate/v4/gui/STViewFrame;)V
2: aload 0
aload 1
getfield org.stringtemplate.v4.gui.STViewFrame.bytecode:Ljavax/swing/JTextPane;
aload 0
getfield org.stringtemplate.v4.gui.STViz.currentScope:Lorg/stringtemplate/v4/InstanceScope;
getfield org.stringtemplate.v4.InstanceScope.st:Lorg/stringtemplate/v4/ST;
getfield org.stringtemplate.v4.ST.impl:Lorg/stringtemplate/v4/compiler/CompiledST;
invokevirtual org.stringtemplate.v4.compiler.CompiledST.disasm:()Ljava/lang/String;
invokevirtual org.stringtemplate.v4.gui.STViz.setText:(Ljavax/swing/JEditorPane;Ljava/lang/String;)V
3: aload 0
aload 1
getfield org.stringtemplate.v4.gui.STViewFrame.template:Ljavax/swing/JTextPane;
aload 0
getfield org.stringtemplate.v4.gui.STViz.currentScope:Lorg/stringtemplate/v4/InstanceScope;
getfield org.stringtemplate.v4.InstanceScope.st:Lorg/stringtemplate/v4/ST;
getfield org.stringtemplate.v4.ST.impl:Lorg/stringtemplate/v4/compiler/CompiledST;
getfield org.stringtemplate.v4.compiler.CompiledST.template:Ljava/lang/String;
invokevirtual org.stringtemplate.v4.gui.STViz.setText:(Ljavax/swing/JEditorPane;Ljava/lang/String;)V
4: new org.stringtemplate.v4.gui.JTreeASTModel
dup
new org.antlr.runtime.tree.CommonTreeAdaptor
dup
invokespecial org.antlr.runtime.tree.CommonTreeAdaptor.<init>:()V
aload 0
getfield org.stringtemplate.v4.gui.STViz.currentScope:Lorg/stringtemplate/v4/InstanceScope;
getfield org.stringtemplate.v4.InstanceScope.st:Lorg/stringtemplate/v4/ST;
getfield org.stringtemplate.v4.ST.impl:Lorg/stringtemplate/v4/compiler/CompiledST;
getfield org.stringtemplate.v4.compiler.CompiledST.ast:Lorg/antlr/runtime/tree/CommonTree;
invokespecial org.stringtemplate.v4.gui.JTreeASTModel.<init>:(Lorg/antlr/runtime/tree/TreeAdaptor;Ljava/lang/Object;)V
astore 2
start local 2 5: aload 0
getfield org.stringtemplate.v4.gui.STViz.viewFrame:Lorg/stringtemplate/v4/gui/STViewFrame;
getfield org.stringtemplate.v4.gui.STViewFrame.ast:Ljavax/swing/JTree;
aload 2
invokevirtual javax.swing.JTree.setModel:(Ljavax/swing/tree/TreeModel;)V
6: aload 0
getfield org.stringtemplate.v4.gui.STViz.currentEvent:Lorg/stringtemplate/v4/debug/InterpEvent;
instanceof org.stringtemplate.v4.debug.EvalExprEvent
ifeq 11
7: aload 0
getfield org.stringtemplate.v4.gui.STViz.currentEvent:Lorg/stringtemplate/v4/debug/InterpEvent;
checkcast org.stringtemplate.v4.debug.EvalExprEvent
astore 3
start local 3 8: aload 0
aload 1
getfield org.stringtemplate.v4.gui.STViewFrame.output:Ljavax/swing/JTextPane;
aload 3
getfield org.stringtemplate.v4.debug.EvalExprEvent.outputStartChar:I
aload 3
getfield org.stringtemplate.v4.debug.EvalExprEvent.outputStopChar:I
invokevirtual org.stringtemplate.v4.gui.STViz.highlight:(Ljavax/swing/text/JTextComponent;II)V
9: aload 0
aload 1
getfield org.stringtemplate.v4.gui.STViewFrame.template:Ljavax/swing/JTextPane;
aload 3
getfield org.stringtemplate.v4.debug.EvalExprEvent.exprStartChar:I
aload 3
getfield org.stringtemplate.v4.debug.EvalExprEvent.exprStopChar:I
invokevirtual org.stringtemplate.v4.gui.STViz.highlight:(Ljavax/swing/text/JTextComponent;II)V
end local 3 10: goto 21
11: StackMap locals: org.stringtemplate.v4.gui.JTreeASTModel
StackMap stack:
aload 0
getfield org.stringtemplate.v4.gui.STViz.currentEvent:Lorg/stringtemplate/v4/debug/InterpEvent;
instanceof org.stringtemplate.v4.debug.EvalTemplateEvent
ifeq 14
12: aload 0
getfield org.stringtemplate.v4.gui.STViz.currentEvent:Lorg/stringtemplate/v4/debug/InterpEvent;
checkcast org.stringtemplate.v4.debug.EvalTemplateEvent
astore 3
start local 3 13: goto 16
end local 3 14: StackMap locals:
StackMap stack:
aload 0
getfield org.stringtemplate.v4.gui.STViz.currentScope:Lorg/stringtemplate/v4/InstanceScope;
getfield org.stringtemplate.v4.InstanceScope.events:Ljava/util/List;
astore 4
start local 4 15: aload 4
aload 4
invokeinterface java.util.List.size:()I
iconst_1
isub
invokeinterface java.util.List.get:(I)Ljava/lang/Object;
checkcast org.stringtemplate.v4.debug.EvalTemplateEvent
astore 3
end local 4 start local 3 16: StackMap locals: org.stringtemplate.v4.debug.EvalTemplateEvent
StackMap stack:
aload 3
ifnull 18
17: aload 0
aload 1
getfield org.stringtemplate.v4.gui.STViewFrame.output:Ljavax/swing/JTextPane;
aload 3
getfield org.stringtemplate.v4.debug.EvalTemplateEvent.outputStartChar:I
aload 3
getfield org.stringtemplate.v4.debug.EvalTemplateEvent.outputStopChar:I
invokevirtual org.stringtemplate.v4.gui.STViz.highlight:(Ljavax/swing/text/JTextComponent;II)V
18: StackMap locals:
StackMap stack:
aload 0
getfield org.stringtemplate.v4.gui.STViz.currentScope:Lorg/stringtemplate/v4/InstanceScope;
getfield org.stringtemplate.v4.InstanceScope.st:Lorg/stringtemplate/v4/ST;
invokevirtual org.stringtemplate.v4.ST.isAnonSubtemplate:()Z
ifeq 21
19: aload 0
getfield org.stringtemplate.v4.gui.STViz.currentScope:Lorg/stringtemplate/v4/InstanceScope;
getfield org.stringtemplate.v4.InstanceScope.st:Lorg/stringtemplate/v4/ST;
getfield org.stringtemplate.v4.ST.impl:Lorg/stringtemplate/v4/compiler/CompiledST;
invokevirtual org.stringtemplate.v4.compiler.CompiledST.getTemplateRange:()Lorg/stringtemplate/v4/misc/Interval;
astore 4
start local 4 20: aload 0
aload 1
getfield org.stringtemplate.v4.gui.STViewFrame.template:Ljavax/swing/JTextPane;
aload 4
getfield org.stringtemplate.v4.misc.Interval.a:I
aload 4
getfield org.stringtemplate.v4.misc.Interval.b:I
invokevirtual org.stringtemplate.v4.gui.STViz.highlight:(Ljavax/swing/text/JTextComponent;II)V
end local 4 end local 3 21: StackMap locals:
StackMap stack:
return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 22 0 this Lorg/stringtemplate/v4/gui/STViz;
0 22 1 m Lorg/stringtemplate/v4/gui/STViewFrame;
5 22 2 astModel Lorg/stringtemplate/v4/gui/JTreeASTModel;
8 10 3 exprEvent Lorg/stringtemplate/v4/debug/EvalExprEvent;
13 14 3 templateEvent Lorg/stringtemplate/v4/debug/EvalTemplateEvent;
16 21 3 templateEvent Lorg/stringtemplate/v4/debug/EvalTemplateEvent;
15 16 4 events Ljava/util/List<Lorg/stringtemplate/v4/debug/InterpEvent;>;
20 21 4 r Lorg/stringtemplate/v4/misc/Interval;
MethodParameters:
Name Flags
m
protected void setText(javax.swing.JEditorPane, java.lang.String);
descriptor: (Ljavax/swing/JEditorPane;Ljava/lang/String;)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=4, locals=6, args_size=3
start local 0 start local 1 start local 2 0: new java.util.ArrayList
dup
invokespecial java.util.ArrayList.<init>:()V
astore 3
start local 3 1: iconst_0
istore 4
start local 4 2: goto 8
3: StackMap locals: java.util.List int
StackMap stack:
aload 2
ldc "\r\n"
iload 4
invokevirtual java.lang.String.indexOf:(Ljava/lang/String;I)I
istore 4
4: iload 4
ifge 6
5: goto 9
6: StackMap locals:
StackMap stack:
aload 3
iload 4
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
7: iinc 4 2
StackMap locals:
StackMap stack:
8: iload 4
aload 2
invokevirtual java.lang.String.length:()I
if_icmplt 3
end local 4 9: StackMap locals:
StackMap stack:
aload 3
invokeinterface java.util.List.size:()I
newarray 10
astore 4
start local 4 10: iconst_0
istore 5
start local 5 11: goto 14
12: StackMap locals: int[] int
StackMap stack:
aload 4
iload 5
aload 3
iload 5
invokeinterface java.util.List.get:(I)Ljava/lang/Object;
checkcast java.lang.Integer
invokevirtual java.lang.Integer.intValue:()I
iastore
13: iinc 5 1
StackMap locals:
StackMap stack:
14: iload 5
aload 3
invokeinterface java.util.List.size:()I
if_icmplt 12
end local 5 15: aload 1
aload 2
invokevirtual javax.swing.JEditorPane.setText:(Ljava/lang/String;)V
16: aload 1
invokevirtual javax.swing.JEditorPane.getDocument:()Ljavax/swing/text/Document;
ldc "WINDOWS_LINE_ENDINGS"
aload 4
invokeinterface javax.swing.text.Document.putProperty:(Ljava/lang/Object;Ljava/lang/Object;)V
17: return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 18 0 this Lorg/stringtemplate/v4/gui/STViz;
0 18 1 component Ljavax/swing/JEditorPane;
0 18 2 text Ljava/lang/String;
1 18 3 windowsLineEndingsList Ljava/util/List<Ljava/lang/Integer;>;
2 9 4 i I
10 18 4 windowsLineEndings [I
11 15 5 i I
MethodParameters:
Name Flags
component
text
protected int toComponentPosition(javax.swing.text.JTextComponent, int);
descriptor: (Ljavax/swing/text/JTextComponent;I)I
flags: (0x0004) ACC_PROTECTED
Code:
stack=3, locals=5, args_size=3
start local 0 start local 1 start local 2 0: aload 1
invokevirtual javax.swing.text.JTextComponent.getDocument:()Ljavax/swing/text/Document;
ldc "WINDOWS_LINE_ENDINGS"
invokeinterface javax.swing.text.Document.getProperty:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast int[]
astore 3
start local 3 1: aload 3
ifnull 2
aload 3
arraylength
ifne 3
2: StackMap locals: int[]
StackMap stack:
iload 2
ireturn
3: StackMap locals:
StackMap stack:
aload 3
iload 2
invokestatic java.util.Arrays.binarySearch:([II)I
istore 4
start local 4 4: iload 4
iflt 6
5: iload 2
iload 4
isub
ireturn
6: StackMap locals: int
StackMap stack:
iload 2
iload 4
ineg
iconst_1
isub
isub
ireturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lorg/stringtemplate/v4/gui/STViz;
0 7 1 component Ljavax/swing/text/JTextComponent;
0 7 2 position I
1 7 3 windowsLineEndings [I
4 7 4 index I
MethodParameters:
Name Flags
component
position
protected int toEventPosition(javax.swing.text.JTextComponent, int);
descriptor: (Ljavax/swing/text/JTextComponent;I)I
flags: (0x0004) ACC_PROTECTED
Code:
stack=3, locals=4, args_size=3
start local 0 start local 1 start local 2 0: iload 2
istore 3
start local 3 1: goto 3
2: StackMap locals: int
StackMap stack:
iinc 3 1
3: StackMap locals:
StackMap stack:
aload 0
aload 1
iload 3
invokevirtual org.stringtemplate.v4.gui.STViz.toComponentPosition:(Ljavax/swing/text/JTextComponent;I)I
iload 2
if_icmplt 2
4: iload 3
ireturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lorg/stringtemplate/v4/gui/STViz;
0 5 1 component Ljavax/swing/text/JTextComponent;
0 5 2 position I
1 5 3 result I
MethodParameters:
Name Flags
component
position
protected final void highlight(javax.swing.text.JTextComponent, int, int);
descriptor: (Ljavax/swing/text/JTextComponent;II)V
flags: (0x0014) ACC_PROTECTED, ACC_FINAL
Code:
stack=5, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
aload 1
iload 2
iload 3
iconst_1
invokevirtual org.stringtemplate.v4.gui.STViz.highlight:(Ljavax/swing/text/JTextComponent;IIZ)V
1: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/stringtemplate/v4/gui/STViz;
0 2 1 comp Ljavax/swing/text/JTextComponent;
0 2 2 i I
0 2 3 j I
MethodParameters:
Name Flags
comp
i
j
protected void highlight(javax.swing.text.JTextComponent, int, int, boolean);
descriptor: (Ljavax/swing/text/JTextComponent;IIZ)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=4, locals=7, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 1
invokevirtual javax.swing.text.JTextComponent.getHighlighter:()Ljavax/swing/text/Highlighter;
astore 5
start local 5 1: aload 5
invokeinterface javax.swing.text.Highlighter.removeAllHighlights:()V
2: aload 0
aload 1
iload 2
invokevirtual org.stringtemplate.v4.gui.STViz.toComponentPosition:(Ljavax/swing/text/JTextComponent;I)I
istore 2
3: aload 0
aload 1
iload 3
invokevirtual org.stringtemplate.v4.gui.STViz.toComponentPosition:(Ljavax/swing/text/JTextComponent;I)I
istore 3
4: aload 5
iload 2
iload 3
iconst_1
iadd
getstatic javax.swing.text.DefaultHighlighter.DefaultPainter:Ljavax/swing/text/LayeredHighlighter$LayerPainter;
invokeinterface javax.swing.text.Highlighter.addHighlight:(IILjavax/swing/text/Highlighter$HighlightPainter;)Ljava/lang/Object;
pop
5: iload 4
ifeq 12
6: aload 1
invokevirtual javax.swing.text.JTextComponent.getCaretPosition:()I
iload 2
if_icmplt 7
aload 1
invokevirtual javax.swing.text.JTextComponent.getCaretPosition:()I
iload 3
if_icmple 12
7: StackMap locals: javax.swing.text.Highlighter
StackMap stack:
aload 1
iload 2
invokevirtual javax.swing.text.JTextComponent.moveCaretPosition:(I)V
8: aload 1
aload 1
iload 2
invokevirtual javax.swing.text.JTextComponent.modelToView:(I)Ljava/awt/Rectangle;
invokevirtual javax.swing.text.JTextComponent.scrollRectToVisible:(Ljava/awt/Rectangle;)V
9: goto 12
10: StackMap locals:
StackMap stack: javax.swing.text.BadLocationException
astore 6
start local 6 11: aload 0
getfield org.stringtemplate.v4.gui.STViz.errMgr:Lorg/stringtemplate/v4/misc/ErrorManager;
aload 0
getfield org.stringtemplate.v4.gui.STViz.tmodel:Lorg/stringtemplate/v4/gui/JTreeSTModel;
getfield org.stringtemplate.v4.gui.JTreeSTModel.root:Lorg/stringtemplate/v4/gui/JTreeSTModel$Wrapper;
getfield org.stringtemplate.v4.gui.JTreeSTModel$Wrapper.event:Lorg/stringtemplate/v4/debug/EvalTemplateEvent;
getfield org.stringtemplate.v4.debug.EvalTemplateEvent.scope:Lorg/stringtemplate/v4/InstanceScope;
getfield org.stringtemplate.v4.InstanceScope.st:Lorg/stringtemplate/v4/ST;
ldc "bad highlight location"
aload 6
invokevirtual org.stringtemplate.v4.misc.ErrorManager.internalError:(Lorg/stringtemplate/v4/ST;Ljava/lang/String;Ljava/lang/Throwable;)V
end local 6 12: StackMap locals:
StackMap stack:
return
end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 13 0 this Lorg/stringtemplate/v4/gui/STViz;
0 13 1 comp Ljavax/swing/text/JTextComponent;
0 13 2 i I
0 13 3 j I
0 13 4 scroll Z
1 13 5 highlighter Ljavax/swing/text/Highlighter;
11 12 6 ble Ljavax/swing/text/BadLocationException;
Exception table:
from to target type
2 9 10 Class javax.swing.text.BadLocationException
MethodParameters:
Name Flags
comp
i
j
scroll
protected void updateAttributes(org.stringtemplate.v4.InstanceScope, org.stringtemplate.v4.gui.STViewFrame);
descriptor: (Lorg/stringtemplate/v4/InstanceScope;Lorg/stringtemplate/v4/gui/STViewFrame;)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=4, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 2
getfield org.stringtemplate.v4.gui.STViewFrame.attributes:Ljavax/swing/JTree;
new org.stringtemplate.v4.gui.JTreeScopeStackModel
dup
aload 1
invokespecial org.stringtemplate.v4.gui.JTreeScopeStackModel.<init>:(Lorg/stringtemplate/v4/InstanceScope;)V
invokevirtual javax.swing.JTree.setModel:(Ljavax/swing/tree/TreeModel;)V
1: aload 2
getfield org.stringtemplate.v4.gui.STViewFrame.attributes:Ljavax/swing/JTree;
iconst_0
invokevirtual javax.swing.JTree.setRootVisible:(Z)V
2: aload 2
getfield org.stringtemplate.v4.gui.STViewFrame.attributes:Ljavax/swing/JTree;
iconst_1
invokevirtual javax.swing.JTree.setShowsRootHandles:(Z)V
3: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/stringtemplate/v4/gui/STViz;
0 4 1 scope Lorg/stringtemplate/v4/InstanceScope;
0 4 2 m Lorg/stringtemplate/v4/gui/STViewFrame;
MethodParameters:
Name Flags
scope final
m final
protected void updateStack(org.stringtemplate.v4.InstanceScope, org.stringtemplate.v4.gui.STViewFrame);
descriptor: (Lorg/stringtemplate/v4/InstanceScope;Lorg/stringtemplate/v4/gui/STViewFrame;)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=4, locals=4, args_size=3
start local 0 start local 1 start local 2 0: aload 1
iconst_1
invokestatic org.stringtemplate.v4.Interpreter.getEnclosingInstanceStack:(Lorg/stringtemplate/v4/InstanceScope;Z)Ljava/util/List;
astore 3
start local 3 1: aload 2
new java.lang.StringBuilder
dup
ldc "STViz - ["
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 3
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
ldc " "
invokestatic org.stringtemplate.v4.misc.Misc.join:(Ljava/util/Iterator;Ljava/lang/String;)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc "]"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual org.stringtemplate.v4.gui.STViewFrame.setTitle:(Ljava/lang/String;)V
2: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/stringtemplate/v4/gui/STViz;
0 3 1 scope Lorg/stringtemplate/v4/InstanceScope;
0 3 2 m Lorg/stringtemplate/v4/gui/STViewFrame;
1 3 3 stack Ljava/util/List<Lorg/stringtemplate/v4/ST;>;
MethodParameters:
Name Flags
scope
m
public org.stringtemplate.v4.debug.InterpEvent findEventAtOutputLocation(java.util.List<org.stringtemplate.v4.debug.InterpEvent>, int);
descriptor: (Ljava/util/List;I)Lorg/stringtemplate/v4/debug/InterpEvent;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=5, args_size=3
start local 0 start local 1 start local 2 0: aload 1
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
astore 4
goto 5
StackMap locals: org.stringtemplate.v4.gui.STViz java.util.List int top java.util.Iterator
StackMap stack:
1: aload 4
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast org.stringtemplate.v4.debug.InterpEvent
astore 3
start local 3 2: aload 3
getfield org.stringtemplate.v4.debug.InterpEvent.scope:Lorg/stringtemplate/v4/InstanceScope;
getfield org.stringtemplate.v4.InstanceScope.earlyEval:Z
ifeq 4
3: goto 5
4: StackMap locals: org.stringtemplate.v4.gui.STViz java.util.List int org.stringtemplate.v4.debug.InterpEvent java.util.Iterator
StackMap stack:
iload 2
aload 3
getfield org.stringtemplate.v4.debug.InterpEvent.outputStartChar:I
if_icmplt 5
iload 2
aload 3
getfield org.stringtemplate.v4.debug.InterpEvent.outputStopChar:I
if_icmpgt 5
aload 3
areturn
end local 3 5: StackMap locals: org.stringtemplate.v4.gui.STViz java.util.List int top java.util.Iterator
StackMap stack:
aload 4
invokeinterface java.util.Iterator.hasNext:()Z
ifne 1
6: aconst_null
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lorg/stringtemplate/v4/gui/STViz;
0 7 1 events Ljava/util/List<Lorg/stringtemplate/v4/debug/InterpEvent;>;
0 7 2 charIndex I
2 5 3 e Lorg/stringtemplate/v4/debug/InterpEvent;
Signature: (Ljava/util/List<Lorg/stringtemplate/v4/debug/InterpEvent;>;I)Lorg/stringtemplate/v4/debug/InterpEvent;
MethodParameters:
Name Flags
events
charIndex
public static void main(java.lang.String[]);
descriptor: ([Ljava/lang/String;)V
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
arraylength
ifle 1
aload 0
iconst_0
aaload
ldc "1"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 1
invokestatic org.stringtemplate.v4.gui.STViz.test1:()V
goto 4
1: StackMap locals:
StackMap stack:
aload 0
arraylength
ifle 2
aload 0
iconst_0
aaload
ldc "2"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 2
invokestatic org.stringtemplate.v4.gui.STViz.test2:()V
goto 4
2: StackMap locals:
StackMap stack:
aload 0
arraylength
ifle 3
aload 0
iconst_0
aaload
ldc "3"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 3
invokestatic org.stringtemplate.v4.gui.STViz.test3:()V
goto 4
3: StackMap locals:
StackMap stack:
aload 0
arraylength
ifle 4
aload 0
iconst_0
aaload
ldc "4"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 4
invokestatic org.stringtemplate.v4.gui.STViz.test4:()V
4: StackMap locals:
StackMap stack:
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 args [Ljava/lang/String;
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
args
public static void test1();
descriptor: ()V
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=6, locals=8, args_size=0
0: ldc "method(type,name,locals,args,stats) ::= <<\npublic <type> <name>(<args:{a| int <a>}; separator=\", \">) {\n <if(locals)>int locals[<locals>];<endif>\n <stats;separator=\"\\n\">\n}\n>>\nassign(a,b) ::= \"<a> = <b>;\"\nreturn(x) ::= <<return <x>;>>\nparen(x) ::= \"(<x>)\"\n"
1: astore 0
start local 0 2: ldc "java.io.tmpdir"
invokestatic java.lang.System.getProperty:(Ljava/lang/String;)Ljava/lang/String;
astore 1
start local 1 3: aload 1
ldc "t.stg"
aload 0
invokestatic org.stringtemplate.v4.gui.STViz.writeFile:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
4: new org.stringtemplate.v4.STGroupFile
dup
new java.lang.StringBuilder
dup
aload 1
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc "/"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc "t.stg"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial org.stringtemplate.v4.STGroupFile.<init>:(Ljava/lang/String;)V
astore 2
start local 2 5: aload 2
ldc "method"
invokevirtual org.stringtemplate.v4.STGroup.getInstanceOf:(Ljava/lang/String;)Lorg/stringtemplate/v4/ST;
astore 3
start local 3 6: aload 3
getfield org.stringtemplate.v4.ST.impl:Lorg/stringtemplate/v4/compiler/CompiledST;
invokevirtual org.stringtemplate.v4.compiler.CompiledST.dump:()V
7: aload 3
ldc "type"
ldc "float"
invokevirtual org.stringtemplate.v4.ST.add:(Ljava/lang/String;Ljava/lang/Object;)Lorg/stringtemplate/v4/ST;
pop
8: aload 3
ldc "name"
ldc "foo"
invokevirtual org.stringtemplate.v4.ST.add:(Ljava/lang/String;Ljava/lang/Object;)Lorg/stringtemplate/v4/ST;
pop
9: aload 3
ldc "locals"
iconst_3
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
invokevirtual org.stringtemplate.v4.ST.add:(Ljava/lang/String;Ljava/lang/Object;)Lorg/stringtemplate/v4/ST;
pop
10: aload 3
ldc "args"
iconst_3
anewarray java.lang.String
dup
iconst_0
ldc "x"
aastore
dup
iconst_1
ldc "y"
aastore
dup
iconst_2
ldc "z"
aastore
invokevirtual org.stringtemplate.v4.ST.add:(Ljava/lang/String;Ljava/lang/Object;)Lorg/stringtemplate/v4/ST;
pop
11: aload 2
ldc "assign"
invokevirtual org.stringtemplate.v4.STGroup.getInstanceOf:(Ljava/lang/String;)Lorg/stringtemplate/v4/ST;
astore 4
start local 4 12: aload 2
ldc "paren"
invokevirtual org.stringtemplate.v4.STGroup.getInstanceOf:(Ljava/lang/String;)Lorg/stringtemplate/v4/ST;
astore 5
start local 5 13: aload 5
ldc "x"
ldc "x"
invokevirtual org.stringtemplate.v4.ST.add:(Ljava/lang/String;Ljava/lang/Object;)Lorg/stringtemplate/v4/ST;
pop
14: aload 4
ldc "a"
aload 5
invokevirtual org.stringtemplate.v4.ST.add:(Ljava/lang/String;Ljava/lang/Object;)Lorg/stringtemplate/v4/ST;
pop
15: aload 4
ldc "b"
ldc "y"
invokevirtual org.stringtemplate.v4.ST.add:(Ljava/lang/String;Ljava/lang/Object;)Lorg/stringtemplate/v4/ST;
pop
16: aload 2
ldc "assign"
invokevirtual org.stringtemplate.v4.STGroup.getInstanceOf:(Ljava/lang/String;)Lorg/stringtemplate/v4/ST;
astore 6
start local 6 17: aload 6
ldc "a"
ldc "y"
invokevirtual org.stringtemplate.v4.ST.add:(Ljava/lang/String;Ljava/lang/Object;)Lorg/stringtemplate/v4/ST;
pop
18: aload 6
ldc "b"
ldc "z"
invokevirtual org.stringtemplate.v4.ST.add:(Ljava/lang/String;Ljava/lang/Object;)Lorg/stringtemplate/v4/ST;
pop
19: aload 2
ldc "return"
invokevirtual org.stringtemplate.v4.STGroup.getInstanceOf:(Ljava/lang/String;)Lorg/stringtemplate/v4/ST;
astore 7
start local 7 20: aload 7
ldc "x"
ldc "3.14159"
invokevirtual org.stringtemplate.v4.ST.add:(Ljava/lang/String;Ljava/lang/Object;)Lorg/stringtemplate/v4/ST;
pop
21: aload 3
ldc "stats"
aload 4
invokevirtual org.stringtemplate.v4.ST.add:(Ljava/lang/String;Ljava/lang/Object;)Lorg/stringtemplate/v4/ST;
pop
22: aload 3
ldc "stats"
aload 6
invokevirtual org.stringtemplate.v4.ST.add:(Ljava/lang/String;Ljava/lang/Object;)Lorg/stringtemplate/v4/ST;
pop
23: aload 3
ldc "stats"
aload 7
invokevirtual org.stringtemplate.v4.ST.add:(Ljava/lang/String;Ljava/lang/Object;)Lorg/stringtemplate/v4/ST;
pop
24: aload 3
invokevirtual org.stringtemplate.v4.ST.inspect:()Lorg/stringtemplate/v4/gui/STViz;
pop
25: getstatic java.lang.System.out:Ljava/io/PrintStream;
aload 3
invokevirtual org.stringtemplate.v4.ST.render:()Ljava/lang/String;
invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
26: return
end local 7 end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
2 27 0 templates Ljava/lang/String;
3 27 1 tmpdir Ljava/lang/String;
5 27 2 group Lorg/stringtemplate/v4/STGroup;
6 27 3 st Lorg/stringtemplate/v4/ST;
12 27 4 s1 Lorg/stringtemplate/v4/ST;
13 27 5 paren Lorg/stringtemplate/v4/ST;
17 27 6 s2 Lorg/stringtemplate/v4/ST;
20 27 7 s3 Lorg/stringtemplate/v4/ST;
Exceptions:
throws java.io.IOException
public static void test2();
descriptor: ()V
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=5, locals=4, args_size=0
0: ldc "t1(q1=\"Some\\nText\") ::= <<\n<q1>\n>>\n\nt2(p1) ::= <<\n<p1>\n>>\n\nmain() ::= <<\nSTART-<t1()>-END\n\nSTART-<t2(p1=\"Some\\nText\")>-END\n>>\n"
1: astore 0
start local 0 2: ldc "java.io.tmpdir"
invokestatic java.lang.System.getProperty:(Ljava/lang/String;)Ljava/lang/String;
astore 1
start local 1 3: aload 1
ldc "t.stg"
aload 0
invokestatic org.stringtemplate.v4.gui.STViz.writeFile:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
4: new org.stringtemplate.v4.STGroupFile
dup
new java.lang.StringBuilder
dup
aload 1
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc "/"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc "t.stg"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial org.stringtemplate.v4.STGroupFile.<init>:(Ljava/lang/String;)V
astore 2
start local 2 5: aload 2
ldc "main"
invokevirtual org.stringtemplate.v4.STGroup.getInstanceOf:(Ljava/lang/String;)Lorg/stringtemplate/v4/ST;
astore 3
start local 3 6: aload 3
invokevirtual org.stringtemplate.v4.ST.inspect:()Lorg/stringtemplate/v4/gui/STViz;
pop
7: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
2 8 0 templates Ljava/lang/String;
3 8 1 tmpdir Ljava/lang/String;
5 8 2 group Lorg/stringtemplate/v4/STGroup;
6 8 3 st Lorg/stringtemplate/v4/ST;
Exceptions:
throws java.io.IOException
public static void test3();
descriptor: ()V
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=5, locals=4, args_size=0
0: ldc "main() ::= <<\nFoo: <{bar};format=\"lower\">\n>>\n"
1: astore 0
start local 0 2: ldc "java.io.tmpdir"
invokestatic java.lang.System.getProperty:(Ljava/lang/String;)Ljava/lang/String;
astore 1
start local 1 3: aload 1
ldc "t.stg"
aload 0
invokestatic org.stringtemplate.v4.gui.STViz.writeFile:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
4: new org.stringtemplate.v4.STGroupFile
dup
new java.lang.StringBuilder
dup
aload 1
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc "/"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc "t.stg"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial org.stringtemplate.v4.STGroupFile.<init>:(Ljava/lang/String;)V
astore 2
start local 2 5: aload 2
ldc "main"
invokevirtual org.stringtemplate.v4.STGroup.getInstanceOf:(Ljava/lang/String;)Lorg/stringtemplate/v4/ST;
astore 3
start local 3 6: aload 3
invokevirtual org.stringtemplate.v4.ST.inspect:()Lorg/stringtemplate/v4/gui/STViz;
pop
7: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
2 8 0 templates Ljava/lang/String;
3 8 1 tmpdir Ljava/lang/String;
5 8 2 group Lorg/stringtemplate/v4/STGroup;
6 8 3 st Lorg/stringtemplate/v4/ST;
Exceptions:
throws java.io.IOException
public static void test4();
descriptor: ()V
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=5, args_size=0
0: ldc "main(t) ::= <<\nhi: <t>\n>>\nfoo(x,y={hi}) ::= \"<bar(x,y)>\"\nbar(x,y) ::= << <y> >>\nignore(m) ::= \"<m>\"\n"
1: astore 0
start local 0 2: new org.stringtemplate.v4.STGroupString
dup
aload 0
invokespecial org.stringtemplate.v4.STGroupString.<init>:(Ljava/lang/String;)V
astore 1
start local 1 3: aload 1
ldc "main"
invokevirtual org.stringtemplate.v4.STGroup.getInstanceOf:(Ljava/lang/String;)Lorg/stringtemplate/v4/ST;
astore 2
start local 2 4: aload 1
ldc "foo"
invokevirtual org.stringtemplate.v4.STGroup.getInstanceOf:(Ljava/lang/String;)Lorg/stringtemplate/v4/ST;
astore 3
start local 3 5: aload 2
ldc "t"
aload 3
invokevirtual org.stringtemplate.v4.ST.add:(Ljava/lang/String;Ljava/lang/Object;)Lorg/stringtemplate/v4/ST;
pop
6: aload 1
ldc "ignore"
invokevirtual org.stringtemplate.v4.STGroup.getInstanceOf:(Ljava/lang/String;)Lorg/stringtemplate/v4/ST;
astore 4
start local 4 7: aload 4
ldc "m"
aload 3
invokevirtual org.stringtemplate.v4.ST.add:(Ljava/lang/String;Ljava/lang/Object;)Lorg/stringtemplate/v4/ST;
pop
8: aload 2
invokevirtual org.stringtemplate.v4.ST.inspect:()Lorg/stringtemplate/v4/gui/STViz;
pop
9: aload 2
invokevirtual org.stringtemplate.v4.ST.render:()Ljava/lang/String;
pop
10: return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
2 11 0 templates Ljava/lang/String;
3 11 1 group Lorg/stringtemplate/v4/STGroup;
4 11 2 st Lorg/stringtemplate/v4/ST;
5 11 3 foo Lorg/stringtemplate/v4/ST;
7 11 4 ignore Lorg/stringtemplate/v4/ST;
Exceptions:
throws java.io.IOException
public static void writeFile(java.lang.String, java.lang.String, java.lang.String);
descriptor: (Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=4, locals=6, args_size=3
start local 0 start local 1 start local 2 0: new java.io.File
dup
aload 0
aload 1
invokespecial java.io.File.<init>:(Ljava/lang/String;Ljava/lang/String;)V
astore 3
start local 3 1: aload 3
invokevirtual java.io.File.getParentFile:()Ljava/io/File;
invokevirtual java.io.File.exists:()Z
ifne 2
aload 3
invokevirtual java.io.File.getParentFile:()Ljava/io/File;
invokevirtual java.io.File.mkdirs:()Z
pop
2: StackMap locals: java.io.File
StackMap stack:
new java.io.FileWriter
dup
aload 3
invokespecial java.io.FileWriter.<init>:(Ljava/io/File;)V
astore 4
start local 4 3: new java.io.BufferedWriter
dup
aload 4
invokespecial java.io.BufferedWriter.<init>:(Ljava/io/Writer;)V
astore 5
start local 5 4: aload 5
aload 2
invokevirtual java.io.BufferedWriter.write:(Ljava/lang/String;)V
5: aload 5
invokevirtual java.io.BufferedWriter.close:()V
6: aload 4
invokevirtual java.io.FileWriter.close:()V
end local 5 end local 4 end local 3 7: goto 11
8: StackMap locals: java.lang.String java.lang.String java.lang.String
StackMap stack: java.io.IOException
astore 3
start local 3 9: getstatic java.lang.System.err:Ljava/io/PrintStream;
ldc "can't write file"
invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
10: aload 3
getstatic java.lang.System.err:Ljava/io/PrintStream;
invokevirtual java.io.IOException.printStackTrace:(Ljava/io/PrintStream;)V
end local 3 11: StackMap locals:
StackMap stack:
return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 12 0 dir Ljava/lang/String;
0 12 1 fileName Ljava/lang/String;
0 12 2 content Ljava/lang/String;
1 7 3 f Ljava/io/File;
3 7 4 w Ljava/io/FileWriter;
4 7 5 bw Ljava/io/BufferedWriter;
9 11 3 ioe Ljava/io/IOException;
Exception table:
from to target type
0 7 8 Class java.io.IOException
MethodParameters:
Name Flags
dir
fileName
content
}
SourceFile: "STViz.java"
NestMembers:
org.stringtemplate.v4.gui.STViz$1 org.stringtemplate.v4.gui.STViz$2 org.stringtemplate.v4.gui.STViz$3 org.stringtemplate.v4.gui.STViz$4 org.stringtemplate.v4.gui.STViz$5 org.stringtemplate.v4.gui.STViz$6
InnerClasses:
public abstract HighlightPainter = javax.swing.text.Highlighter$HighlightPainter of javax.swing.text.Highlighter
public Wrapper = org.stringtemplate.v4.gui.JTreeSTModel$Wrapper of org.stringtemplate.v4.gui.JTreeSTModel
org.stringtemplate.v4.gui.STViz$1
org.stringtemplate.v4.gui.STViz$2
org.stringtemplate.v4.gui.STViz$3
org.stringtemplate.v4.gui.STViz$4
org.stringtemplate.v4.gui.STViz$5
org.stringtemplate.v4.gui.STViz$6