class freemarker.debug.impl.RmiDebugModelImpl extends java.rmi.server.UnicastRemoteObject implements freemarker.debug.DebugModel
minor version: 0
major version: 59
flags: flags: (0x0020) ACC_SUPER
this_class: freemarker.debug.impl.RmiDebugModelImpl
super_class: java.rmi.server.UnicastRemoteObject
{
private static final long serialVersionUID;
descriptor: J
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 1
private final freemarker.template.TemplateModel model;
descriptor: Lfreemarker/template/TemplateModel;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final int type;
descriptor: I
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
void <init>(freemarker.template.TemplateModel, int);
descriptor: (Lfreemarker/template/TemplateModel;I)V
flags: (0x0000)
Code:
stack=3, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
invokespecial java.rmi.server.UnicastRemoteObject.<init>:()V
1: aload 0
aload 1
putfield freemarker.debug.impl.RmiDebugModelImpl.model:Lfreemarker/template/TemplateModel;
2: aload 0
aload 1
invokestatic freemarker.debug.impl.RmiDebugModelImpl.calculateType:(Lfreemarker/template/TemplateModel;)I
iload 2
iadd
putfield freemarker.debug.impl.RmiDebugModelImpl.type:I
3: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lfreemarker/debug/impl/RmiDebugModelImpl;
0 4 1 model Lfreemarker/template/TemplateModel;
0 4 2 extraTypes I
Exceptions:
throws java.rmi.RemoteException
MethodParameters:
Name Flags
model
extraTypes
private static freemarker.debug.DebugModel getDebugModel(freemarker.template.TemplateModel);
descriptor: (Lfreemarker/template/TemplateModel;)Lfreemarker/debug/DebugModel;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokestatic freemarker.debug.impl.RmiDebuggedEnvironmentImpl.getCachedWrapperFor:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast freemarker.debug.DebugModel
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 tm Lfreemarker/template/TemplateModel;
Exceptions:
throws java.rmi.RemoteException
MethodParameters:
Name Flags
tm
public java.lang.String getAsString();
descriptor: ()Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield freemarker.debug.impl.RmiDebugModelImpl.model:Lfreemarker/template/TemplateModel;
checkcast freemarker.template.TemplateScalarModel
invokeinterface freemarker.template.TemplateScalarModel.getAsString:()Ljava/lang/String;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lfreemarker/debug/impl/RmiDebugModelImpl;
Exceptions:
throws freemarker.template.TemplateModelException
public java.lang.Number getAsNumber();
descriptor: ()Ljava/lang/Number;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield freemarker.debug.impl.RmiDebugModelImpl.model:Lfreemarker/template/TemplateModel;
checkcast freemarker.template.TemplateNumberModel
invokeinterface freemarker.template.TemplateNumberModel.getAsNumber:()Ljava/lang/Number;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lfreemarker/debug/impl/RmiDebugModelImpl;
Exceptions:
throws freemarker.template.TemplateModelException
public java.util.Date getAsDate();
descriptor: ()Ljava/util/Date;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield freemarker.debug.impl.RmiDebugModelImpl.model:Lfreemarker/template/TemplateModel;
checkcast freemarker.template.TemplateDateModel
invokeinterface freemarker.template.TemplateDateModel.getAsDate:()Ljava/util/Date;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lfreemarker/debug/impl/RmiDebugModelImpl;
Exceptions:
throws freemarker.template.TemplateModelException
public int getDateType();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield freemarker.debug.impl.RmiDebugModelImpl.model:Lfreemarker/template/TemplateModel;
checkcast freemarker.template.TemplateDateModel
invokeinterface freemarker.template.TemplateDateModel.getDateType:()I
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lfreemarker/debug/impl/RmiDebugModelImpl;
public boolean getAsBoolean();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield freemarker.debug.impl.RmiDebugModelImpl.model:Lfreemarker/template/TemplateModel;
checkcast freemarker.template.TemplateBooleanModel
invokeinterface freemarker.template.TemplateBooleanModel.getAsBoolean:()Z
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lfreemarker/debug/impl/RmiDebugModelImpl;
Exceptions:
throws freemarker.template.TemplateModelException
public int size();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield freemarker.debug.impl.RmiDebugModelImpl.model:Lfreemarker/template/TemplateModel;
instanceof freemarker.template.TemplateSequenceModel
ifeq 2
1: aload 0
getfield freemarker.debug.impl.RmiDebugModelImpl.model:Lfreemarker/template/TemplateModel;
checkcast freemarker.template.TemplateSequenceModel
invokeinterface freemarker.template.TemplateSequenceModel.size:()I
ireturn
2: StackMap locals:
StackMap stack:
aload 0
getfield freemarker.debug.impl.RmiDebugModelImpl.model:Lfreemarker/template/TemplateModel;
checkcast freemarker.template.TemplateHashModelEx
invokeinterface freemarker.template.TemplateHashModelEx.size:()I
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lfreemarker/debug/impl/RmiDebugModelImpl;
Exceptions:
throws freemarker.template.TemplateModelException
public freemarker.debug.DebugModel get(int);
descriptor: (I)Lfreemarker/debug/DebugModel;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield freemarker.debug.impl.RmiDebugModelImpl.model:Lfreemarker/template/TemplateModel;
checkcast freemarker.template.TemplateSequenceModel
iload 1
invokeinterface freemarker.template.TemplateSequenceModel.get:(I)Lfreemarker/template/TemplateModel;
invokestatic freemarker.debug.impl.RmiDebugModelImpl.getDebugModel:(Lfreemarker/template/TemplateModel;)Lfreemarker/debug/DebugModel;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lfreemarker/debug/impl/RmiDebugModelImpl;
0 1 1 index I
Exceptions:
throws freemarker.template.TemplateModelException, java.rmi.RemoteException
MethodParameters:
Name Flags
index
public freemarker.debug.DebugModel[] get(int, int);
descriptor: (II)[Lfreemarker/debug/DebugModel;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=6, args_size=3
start local 0 start local 1 start local 2 0: iload 2
iload 1
isub
anewarray freemarker.debug.DebugModel
astore 3
start local 3 1: aload 0
getfield freemarker.debug.impl.RmiDebugModelImpl.model:Lfreemarker/template/TemplateModel;
checkcast freemarker.template.TemplateSequenceModel
astore 4
start local 4 2: iload 1
istore 5
start local 5 3: goto 6
4: StackMap locals: freemarker.debug.DebugModel[] freemarker.template.TemplateSequenceModel int
StackMap stack:
aload 3
iload 5
iload 1
isub
aload 4
iload 5
invokeinterface freemarker.template.TemplateSequenceModel.get:(I)Lfreemarker/template/TemplateModel;
invokestatic freemarker.debug.impl.RmiDebugModelImpl.getDebugModel:(Lfreemarker/template/TemplateModel;)Lfreemarker/debug/DebugModel;
aastore
5: iinc 5 1
StackMap locals:
StackMap stack:
6: iload 5
iload 2
if_icmplt 4
end local 5 7: aload 3
areturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lfreemarker/debug/impl/RmiDebugModelImpl;
0 8 1 fromIndex I
0 8 2 toIndex I
1 8 3 dm [Lfreemarker/debug/DebugModel;
2 8 4 s Lfreemarker/template/TemplateSequenceModel;
3 7 5 i I
Exceptions:
throws freemarker.template.TemplateModelException, java.rmi.RemoteException
MethodParameters:
Name Flags
fromIndex
toIndex
public freemarker.debug.DebugModel[] getCollection();
descriptor: ()[Lfreemarker/debug/DebugModel;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=3, args_size=1
start local 0 0: new java.util.ArrayList
dup
invokespecial java.util.ArrayList.<init>:()V
astore 1
start local 1 1: aload 0
getfield freemarker.debug.impl.RmiDebugModelImpl.model:Lfreemarker/template/TemplateModel;
checkcast freemarker.template.TemplateCollectionModel
invokeinterface freemarker.template.TemplateCollectionModel.iterator:()Lfreemarker/template/TemplateModelIterator;
astore 2
start local 2 2: goto 4
3: StackMap locals: java.util.List freemarker.template.TemplateModelIterator
StackMap stack:
aload 1
aload 2
invokeinterface freemarker.template.TemplateModelIterator.next:()Lfreemarker/template/TemplateModel;
invokestatic freemarker.debug.impl.RmiDebugModelImpl.getDebugModel:(Lfreemarker/template/TemplateModel;)Lfreemarker/debug/DebugModel;
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
4: StackMap locals:
StackMap stack:
aload 2
invokeinterface freemarker.template.TemplateModelIterator.hasNext:()Z
ifne 3
5: aload 1
aload 1
invokeinterface java.util.List.size:()I
anewarray freemarker.debug.DebugModel
invokeinterface java.util.List.toArray:([Ljava/lang/Object;)[Ljava/lang/Object;
checkcast freemarker.debug.DebugModel[]
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lfreemarker/debug/impl/RmiDebugModelImpl;
1 6 1 list Ljava/util/List;
2 6 2 i Lfreemarker/template/TemplateModelIterator;
Exceptions:
throws freemarker.template.TemplateModelException, java.rmi.RemoteException
public freemarker.debug.DebugModel get(java.lang.String);
descriptor: (Ljava/lang/String;)Lfreemarker/debug/DebugModel;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield freemarker.debug.impl.RmiDebugModelImpl.model:Lfreemarker/template/TemplateModel;
checkcast freemarker.template.TemplateHashModel
aload 1
invokeinterface freemarker.template.TemplateHashModel.get:(Ljava/lang/String;)Lfreemarker/template/TemplateModel;
invokestatic freemarker.debug.impl.RmiDebugModelImpl.getDebugModel:(Lfreemarker/template/TemplateModel;)Lfreemarker/debug/DebugModel;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lfreemarker/debug/impl/RmiDebugModelImpl;
0 1 1 key Ljava/lang/String;
Exceptions:
throws freemarker.template.TemplateModelException, java.rmi.RemoteException
MethodParameters:
Name Flags
key
public freemarker.debug.DebugModel[] get(java.lang.String[]);
descriptor: ([Ljava/lang/String;)[Lfreemarker/debug/DebugModel;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=5, args_size=2
start local 0 start local 1 0: aload 1
arraylength
anewarray freemarker.debug.DebugModel
astore 2
start local 2 1: aload 0
getfield freemarker.debug.impl.RmiDebugModelImpl.model:Lfreemarker/template/TemplateModel;
checkcast freemarker.template.TemplateHashModel
astore 3
start local 3 2: iconst_0
istore 4
start local 4 3: goto 6
4: StackMap locals: freemarker.debug.DebugModel[] freemarker.template.TemplateHashModel int
StackMap stack:
aload 2
iload 4
aload 3
aload 1
iload 4
aaload
invokeinterface freemarker.template.TemplateHashModel.get:(Ljava/lang/String;)Lfreemarker/template/TemplateModel;
invokestatic freemarker.debug.impl.RmiDebugModelImpl.getDebugModel:(Lfreemarker/template/TemplateModel;)Lfreemarker/debug/DebugModel;
aastore
5: iinc 4 1
StackMap locals:
StackMap stack:
6: iload 4
aload 1
arraylength
if_icmplt 4
end local 4 7: aload 2
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lfreemarker/debug/impl/RmiDebugModelImpl;
0 8 1 keys [Ljava/lang/String;
1 8 2 dm [Lfreemarker/debug/DebugModel;
2 8 3 h Lfreemarker/template/TemplateHashModel;
3 7 4 i I
Exceptions:
throws freemarker.template.TemplateModelException, java.rmi.RemoteException
MethodParameters:
Name Flags
keys
public java.lang.String[] keys();
descriptor: ()[Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=4, args_size=1
start local 0 0: aload 0
getfield freemarker.debug.impl.RmiDebugModelImpl.model:Lfreemarker/template/TemplateModel;
checkcast freemarker.template.TemplateHashModelEx
astore 1
start local 1 1: new java.util.ArrayList
dup
invokespecial java.util.ArrayList.<init>:()V
astore 2
start local 2 2: aload 1
invokeinterface freemarker.template.TemplateHashModelEx.keys:()Lfreemarker/template/TemplateCollectionModel;
invokeinterface freemarker.template.TemplateCollectionModel.iterator:()Lfreemarker/template/TemplateModelIterator;
astore 3
start local 3 3: goto 5
4: StackMap locals: freemarker.template.TemplateHashModelEx java.util.List freemarker.template.TemplateModelIterator
StackMap stack:
aload 2
aload 3
invokeinterface freemarker.template.TemplateModelIterator.next:()Lfreemarker/template/TemplateModel;
checkcast freemarker.template.TemplateScalarModel
invokeinterface freemarker.template.TemplateScalarModel.getAsString:()Ljava/lang/String;
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
5: StackMap locals:
StackMap stack:
aload 3
invokeinterface freemarker.template.TemplateModelIterator.hasNext:()Z
ifne 4
6: aload 2
aload 2
invokeinterface java.util.List.size:()I
anewarray java.lang.String
invokeinterface java.util.List.toArray:([Ljava/lang/Object;)[Ljava/lang/Object;
checkcast java.lang.String[]
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lfreemarker/debug/impl/RmiDebugModelImpl;
1 7 1 h Lfreemarker/template/TemplateHashModelEx;
2 7 2 list Ljava/util/List;
3 7 3 i Lfreemarker/template/TemplateModelIterator;
Exceptions:
throws freemarker.template.TemplateModelException
public int getModelTypes();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield freemarker.debug.impl.RmiDebugModelImpl.type:I
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lfreemarker/debug/impl/RmiDebugModelImpl;
private static int calculateType(freemarker.template.TemplateModel);
descriptor: (Lfreemarker/template/TemplateModel;)I
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=1, locals=2, args_size=1
start local 0 0: iconst_0
istore 1
start local 1 1: aload 0
instanceof freemarker.template.TemplateScalarModel
ifeq 2
iinc 1 1
2: StackMap locals: int
StackMap stack:
aload 0
instanceof freemarker.template.TemplateNumberModel
ifeq 3
iinc 1 2
3: StackMap locals:
StackMap stack:
aload 0
instanceof freemarker.template.TemplateDateModel
ifeq 4
iinc 1 4
4: StackMap locals:
StackMap stack:
aload 0
instanceof freemarker.template.TemplateBooleanModel
ifeq 5
iinc 1 8
5: StackMap locals:
StackMap stack:
aload 0
instanceof freemarker.template.TemplateSequenceModel
ifeq 6
iinc 1 16
6: StackMap locals:
StackMap stack:
aload 0
instanceof freemarker.template.TemplateCollectionModel
ifeq 7
iinc 1 32
7: StackMap locals:
StackMap stack:
aload 0
instanceof freemarker.template.TemplateHashModelEx
ifeq 8
iinc 1 128
goto 9
8: StackMap locals:
StackMap stack:
aload 0
instanceof freemarker.template.TemplateHashModel
ifeq 9
iinc 1 64
9: StackMap locals:
StackMap stack:
aload 0
instanceof freemarker.template.TemplateMethodModelEx
ifeq 10
iinc 1 512
goto 11
10: StackMap locals:
StackMap stack:
aload 0
instanceof freemarker.template.TemplateMethodModel
ifeq 11
iinc 1 256
11: StackMap locals:
StackMap stack:
aload 0
instanceof freemarker.template.TemplateTransformModel
ifeq 12
iinc 1 1024
12: StackMap locals:
StackMap stack:
iload 1
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 13 0 model Lfreemarker/template/TemplateModel;
1 13 1 type I
MethodParameters:
Name Flags
model
}
SourceFile: "RmiDebugModelImpl.java"