public abstract class freemarker.template.DefaultArrayAdapter extends freemarker.template.WrappingTemplateModel implements freemarker.template.TemplateSequenceModel, freemarker.template.AdapterTemplateModel, freemarker.ext.util.WrapperTemplateModel, java.io.Serializable
minor version: 0
major version: 59
flags: flags: (0x0421) ACC_PUBLIC, ACC_SUPER, ACC_ABSTRACT
this_class: freemarker.template.DefaultArrayAdapter
super_class: freemarker.template.WrappingTemplateModel
{
public static freemarker.template.DefaultArrayAdapter adapt(java.lang.Object, freemarker.template.ObjectWrapperAndUnwrapper);
descriptor: (Ljava/lang/Object;Lfreemarker/template/ObjectWrapperAndUnwrapper;)Lfreemarker/template/DefaultArrayAdapter;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=4, locals=3, args_size=2
start local 0 start local 1 0: aload 0
invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
invokevirtual java.lang.Class.getComponentType:()Ljava/lang/Class;
astore 2
start local 2 1: aload 2
ifnonnull 3
2: new java.lang.IllegalArgumentException
dup
ldc "Not an array"
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
3: StackMap locals: java.lang.Class
StackMap stack:
aload 2
invokevirtual java.lang.Class.isPrimitive:()Z
ifeq 21
4: aload 2
getstatic java.lang.Integer.TYPE:Ljava/lang/Class;
if_acmpne 6
5: new freemarker.template.DefaultArrayAdapter$IntArrayAdapter
dup
aload 0
checkcast int[]
aload 1
invokespecial freemarker.template.DefaultArrayAdapter$IntArrayAdapter.<init>:([ILfreemarker/template/ObjectWrapper;)V
areturn
6: StackMap locals:
StackMap stack:
aload 2
getstatic java.lang.Double.TYPE:Ljava/lang/Class;
if_acmpne 8
7: new freemarker.template.DefaultArrayAdapter$DoubleArrayAdapter
dup
aload 0
checkcast double[]
aload 1
invokespecial freemarker.template.DefaultArrayAdapter$DoubleArrayAdapter.<init>:([DLfreemarker/template/ObjectWrapper;)V
areturn
8: StackMap locals:
StackMap stack:
aload 2
getstatic java.lang.Long.TYPE:Ljava/lang/Class;
if_acmpne 10
9: new freemarker.template.DefaultArrayAdapter$LongArrayAdapter
dup
aload 0
checkcast long[]
aload 1
invokespecial freemarker.template.DefaultArrayAdapter$LongArrayAdapter.<init>:([JLfreemarker/template/ObjectWrapper;)V
areturn
10: StackMap locals:
StackMap stack:
aload 2
getstatic java.lang.Boolean.TYPE:Ljava/lang/Class;
if_acmpne 12
11: new freemarker.template.DefaultArrayAdapter$BooleanArrayAdapter
dup
aload 0
checkcast boolean[]
aload 1
invokespecial freemarker.template.DefaultArrayAdapter$BooleanArrayAdapter.<init>:([ZLfreemarker/template/ObjectWrapper;)V
areturn
12: StackMap locals:
StackMap stack:
aload 2
getstatic java.lang.Float.TYPE:Ljava/lang/Class;
if_acmpne 14
13: new freemarker.template.DefaultArrayAdapter$FloatArrayAdapter
dup
aload 0
checkcast float[]
aload 1
invokespecial freemarker.template.DefaultArrayAdapter$FloatArrayAdapter.<init>:([FLfreemarker/template/ObjectWrapper;)V
areturn
14: StackMap locals:
StackMap stack:
aload 2
getstatic java.lang.Character.TYPE:Ljava/lang/Class;
if_acmpne 16
15: new freemarker.template.DefaultArrayAdapter$CharArrayAdapter
dup
aload 0
checkcast char[]
aload 1
invokespecial freemarker.template.DefaultArrayAdapter$CharArrayAdapter.<init>:([CLfreemarker/template/ObjectWrapper;)V
areturn
16: StackMap locals:
StackMap stack:
aload 2
getstatic java.lang.Short.TYPE:Ljava/lang/Class;
if_acmpne 18
17: new freemarker.template.DefaultArrayAdapter$ShortArrayAdapter
dup
aload 0
checkcast short[]
aload 1
invokespecial freemarker.template.DefaultArrayAdapter$ShortArrayAdapter.<init>:([SLfreemarker/template/ObjectWrapper;)V
areturn
18: StackMap locals:
StackMap stack:
aload 2
getstatic java.lang.Byte.TYPE:Ljava/lang/Class;
if_acmpne 20
19: new freemarker.template.DefaultArrayAdapter$ByteArrayAdapter
dup
aload 0
checkcast byte[]
aload 1
invokespecial freemarker.template.DefaultArrayAdapter$ByteArrayAdapter.<init>:([BLfreemarker/template/ObjectWrapper;)V
areturn
20: StackMap locals:
StackMap stack:
new freemarker.template.DefaultArrayAdapter$GenericPrimitiveArrayAdapter
dup
aload 0
aload 1
invokespecial freemarker.template.DefaultArrayAdapter$GenericPrimitiveArrayAdapter.<init>:(Ljava/lang/Object;Lfreemarker/template/ObjectWrapper;)V
areturn
21: StackMap locals:
StackMap stack:
new freemarker.template.DefaultArrayAdapter$ObjectArrayAdapter
dup
aload 0
checkcast java.lang.Object[]
aload 1
invokespecial freemarker.template.DefaultArrayAdapter$ObjectArrayAdapter.<init>:([Ljava/lang/Object;Lfreemarker/template/ObjectWrapper;)V
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 22 0 array Ljava/lang/Object;
0 22 1 wrapper Lfreemarker/template/ObjectWrapperAndUnwrapper;
1 22 2 componentType Ljava/lang/Class;
MethodParameters:
Name Flags
array
wrapper
private void <init>(freemarker.template.ObjectWrapper);
descriptor: (Lfreemarker/template/ObjectWrapper;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
invokespecial freemarker.template.WrappingTemplateModel.<init>:(Lfreemarker/template/ObjectWrapper;)V
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lfreemarker/template/DefaultArrayAdapter;
0 2 1 wrapper Lfreemarker/template/ObjectWrapper;
MethodParameters:
Name Flags
wrapper
public final java.lang.Object getAdaptedObject(java.lang.Class);
descriptor: (Ljava/lang/Class;)Ljava/lang/Object;
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
Code:
stack=1, locals=2, args_size=2
start local 0 start local 1 0: aload 0
invokevirtual freemarker.template.DefaultArrayAdapter.getWrappedObject:()Ljava/lang/Object;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lfreemarker/template/DefaultArrayAdapter;
0 1 1 hint Ljava/lang/Class;
MethodParameters:
Name Flags
hint
}
SourceFile: "DefaultArrayAdapter.java"
NestMembers:
freemarker.template.DefaultArrayAdapter$BooleanArrayAdapter freemarker.template.DefaultArrayAdapter$ByteArrayAdapter freemarker.template.DefaultArrayAdapter$CharArrayAdapter freemarker.template.DefaultArrayAdapter$DoubleArrayAdapter freemarker.template.DefaultArrayAdapter$FloatArrayAdapter freemarker.template.DefaultArrayAdapter$GenericPrimitiveArrayAdapter freemarker.template.DefaultArrayAdapter$IntArrayAdapter freemarker.template.DefaultArrayAdapter$LongArrayAdapter freemarker.template.DefaultArrayAdapter$ObjectArrayAdapter freemarker.template.DefaultArrayAdapter$ShortArrayAdapter
InnerClasses:
private BooleanArrayAdapter = freemarker.template.DefaultArrayAdapter$BooleanArrayAdapter of freemarker.template.DefaultArrayAdapter
private ByteArrayAdapter = freemarker.template.DefaultArrayAdapter$ByteArrayAdapter of freemarker.template.DefaultArrayAdapter
private CharArrayAdapter = freemarker.template.DefaultArrayAdapter$CharArrayAdapter of freemarker.template.DefaultArrayAdapter
private DoubleArrayAdapter = freemarker.template.DefaultArrayAdapter$DoubleArrayAdapter of freemarker.template.DefaultArrayAdapter
private FloatArrayAdapter = freemarker.template.DefaultArrayAdapter$FloatArrayAdapter of freemarker.template.DefaultArrayAdapter
private GenericPrimitiveArrayAdapter = freemarker.template.DefaultArrayAdapter$GenericPrimitiveArrayAdapter of freemarker.template.DefaultArrayAdapter
private IntArrayAdapter = freemarker.template.DefaultArrayAdapter$IntArrayAdapter of freemarker.template.DefaultArrayAdapter
private LongArrayAdapter = freemarker.template.DefaultArrayAdapter$LongArrayAdapter of freemarker.template.DefaultArrayAdapter
private ObjectArrayAdapter = freemarker.template.DefaultArrayAdapter$ObjectArrayAdapter of freemarker.template.DefaultArrayAdapter
private ShortArrayAdapter = freemarker.template.DefaultArrayAdapter$ShortArrayAdapter of freemarker.template.DefaultArrayAdapter