final class com.sun.org.apache.xalan.internal.xsltc.compiler.ConcatCall extends com.sun.org.apache.xalan.internal.xsltc.compiler.FunctionCall
minor version: 0
major version: 59
flags: flags: (0x0030) ACC_FINAL, ACC_SUPER
this_class: com.sun.org.apache.xalan.internal.xsltc.compiler.ConcatCall
super_class: com.sun.org.apache.xalan.internal.xsltc.compiler.FunctionCall
{
public void <init>(com.sun.org.apache.xalan.internal.xsltc.compiler.QName, java.util.List<com.sun.org.apache.xalan.internal.xsltc.compiler.Expression>);
descriptor: (Lcom/sun/org/apache/xalan/internal/xsltc/compiler/QName;Ljava/util/List;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=3, args_size=3
start local 0 // com.sun.org.apache.xalan.internal.xsltc.compiler.ConcatCall this
start local 1 // com.sun.org.apache.xalan.internal.xsltc.compiler.QName fname
start local 2 // java.util.List arguments
0: .line 43
aload 0 /* this */
aload 1 /* fname */
aload 2 /* arguments */
invokespecial com.sun.org.apache.xalan.internal.xsltc.compiler.FunctionCall.<init>:(Lcom/sun/org/apache/xalan/internal/xsltc/compiler/QName;Ljava/util/List;)V
1: .line 44
return
end local 2 // java.util.List arguments
end local 1 // com.sun.org.apache.xalan.internal.xsltc.compiler.QName fname
end local 0 // com.sun.org.apache.xalan.internal.xsltc.compiler.ConcatCall this
LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/sun/org/apache/xalan/internal/xsltc/compiler/ConcatCall;
0 2 1 fname Lcom/sun/org/apache/xalan/internal/xsltc/compiler/QName;
0 2 2 arguments Ljava/util/List<Lcom/sun/org/apache/xalan/internal/xsltc/compiler/Expression;>;
Signature: (Lcom/sun/org/apache/xalan/internal/xsltc/compiler/QName;Ljava/util/List<Lcom/sun/org/apache/xalan/internal/xsltc/compiler/Expression;>;)V
MethodParameters:
Name Flags
fname
arguments
public com.sun.org.apache.xalan.internal.xsltc.compiler.util.Type typeCheck(com.sun.org.apache.xalan.internal.xsltc.compiler.SymbolTable);
descriptor: (Lcom/sun/org/apache/xalan/internal/xsltc/compiler/SymbolTable;)Lcom/sun/org/apache/xalan/internal/xsltc/compiler/util/Type;
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=4, args_size=2
start local 0 // com.sun.org.apache.xalan.internal.xsltc.compiler.ConcatCall this
start local 1 // com.sun.org.apache.xalan.internal.xsltc.compiler.SymbolTable stable
0: .line 47
iconst_0
istore 2 /* i */
start local 2 // int i
1: goto 6
2: .line 48
StackMap locals: int
StackMap stack:
aload 0 /* this */
iload 2 /* i */
invokevirtual com.sun.org.apache.xalan.internal.xsltc.compiler.ConcatCall.argument:(I)Lcom/sun/org/apache/xalan/internal/xsltc/compiler/Expression;
astore 3 /* exp */
start local 3 // com.sun.org.apache.xalan.internal.xsltc.compiler.Expression exp
3: .line 49
aload 3 /* exp */
aload 1 /* stable */
invokevirtual com.sun.org.apache.xalan.internal.xsltc.compiler.Expression.typeCheck:(Lcom/sun/org/apache/xalan/internal/xsltc/compiler/SymbolTable;)Lcom/sun/org/apache/xalan/internal/xsltc/compiler/util/Type;
getstatic com.sun.org.apache.xalan.internal.xsltc.compiler.util.Type.String:Lcom/sun/org/apache/xalan/internal/xsltc/compiler/util/Type;
invokevirtual com.sun.org.apache.xalan.internal.xsltc.compiler.util.Type.identicalTo:(Lcom/sun/org/apache/xalan/internal/xsltc/compiler/util/Type;)Z
ifne 5
4: .line 50
aload 0 /* this */
iload 2 /* i */
new com.sun.org.apache.xalan.internal.xsltc.compiler.CastExpr
dup
aload 3 /* exp */
getstatic com.sun.org.apache.xalan.internal.xsltc.compiler.util.Type.String:Lcom/sun/org/apache/xalan/internal/xsltc/compiler/util/Type;
invokespecial com.sun.org.apache.xalan.internal.xsltc.compiler.CastExpr.<init>:(Lcom/sun/org/apache/xalan/internal/xsltc/compiler/Expression;Lcom/sun/org/apache/xalan/internal/xsltc/compiler/util/Type;)V
invokevirtual com.sun.org.apache.xalan.internal.xsltc.compiler.ConcatCall.setArgument:(ILcom/sun/org/apache/xalan/internal/xsltc/compiler/Expression;)V
end local 3 // com.sun.org.apache.xalan.internal.xsltc.compiler.Expression exp
5: .line 47
StackMap locals:
StackMap stack:
iinc 2 /* i */ 1
StackMap locals:
StackMap stack:
6: iload 2 /* i */
aload 0 /* this */
invokevirtual com.sun.org.apache.xalan.internal.xsltc.compiler.ConcatCall.argumentCount:()I
if_icmplt 2
end local 2 // int i
7: .line 53
aload 0 /* this */
getstatic com.sun.org.apache.xalan.internal.xsltc.compiler.util.Type.String:Lcom/sun/org/apache/xalan/internal/xsltc/compiler/util/Type;
dup_x1
putfield com.sun.org.apache.xalan.internal.xsltc.compiler.ConcatCall._type:Lcom/sun/org/apache/xalan/internal/xsltc/compiler/util/Type;
areturn
end local 1 // com.sun.org.apache.xalan.internal.xsltc.compiler.SymbolTable stable
end local 0 // com.sun.org.apache.xalan.internal.xsltc.compiler.ConcatCall this
LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lcom/sun/org/apache/xalan/internal/xsltc/compiler/ConcatCall;
0 8 1 stable Lcom/sun/org/apache/xalan/internal/xsltc/compiler/SymbolTable;
1 7 2 i I
3 5 3 exp Lcom/sun/org/apache/xalan/internal/xsltc/compiler/Expression;
Exceptions:
throws com.sun.org.apache.xalan.internal.xsltc.compiler.util.TypeCheckError
MethodParameters:
Name Flags
stable
public void translate(com.sun.org.apache.xalan.internal.xsltc.compiler.util.ClassGenerator, com.sun.org.apache.xalan.internal.xsltc.compiler.util.MethodGenerator);
descriptor: (Lcom/sun/org/apache/xalan/internal/xsltc/compiler/util/ClassGenerator;Lcom/sun/org/apache/xalan/internal/xsltc/compiler/util/MethodGenerator;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=10, args_size=3
start local 0 // com.sun.org.apache.xalan.internal.xsltc.compiler.ConcatCall this
start local 1 // com.sun.org.apache.xalan.internal.xsltc.compiler.util.ClassGenerator classGen
start local 2 // com.sun.org.apache.xalan.internal.xsltc.compiler.util.MethodGenerator methodGen
0: .line 58
aload 1 /* classGen */
invokevirtual com.sun.org.apache.xalan.internal.xsltc.compiler.util.ClassGenerator.getConstantPool:()Lcom/sun/org/apache/bcel/internal/generic/ConstantPoolGen;
astore 3 /* cpg */
start local 3 // com.sun.org.apache.bcel.internal.generic.ConstantPoolGen cpg
1: .line 59
aload 2 /* methodGen */
invokevirtual com.sun.org.apache.xalan.internal.xsltc.compiler.util.MethodGenerator.getInstructionList:()Lcom/sun/org/apache/bcel/internal/generic/InstructionList;
astore 4 /* il */
start local 4 // com.sun.org.apache.bcel.internal.generic.InstructionList il
2: .line 60
aload 0 /* this */
invokevirtual com.sun.org.apache.xalan.internal.xsltc.compiler.ConcatCall.argumentCount:()I
istore 5 /* nArgs */
start local 5 // int nArgs
3: .line 62
iload 5 /* nArgs */
tableswitch { // 0 - 1
0: 4
1: 6
default: 8
}
4: .line 64
StackMap locals: com.sun.org.apache.bcel.internal.generic.ConstantPoolGen com.sun.org.apache.bcel.internal.generic.InstructionList int
StackMap stack:
aload 4 /* il */
new com.sun.org.apache.bcel.internal.generic.PUSH
dup
aload 3 /* cpg */
ldc ""
invokespecial com.sun.org.apache.bcel.internal.generic.PUSH.<init>:(Lcom/sun/org/apache/bcel/internal/generic/ConstantPoolGen;Ljava/lang/String;)V
invokevirtual com.sun.org.apache.bcel.internal.generic.InstructionList.append:(Lcom/sun/org/apache/bcel/internal/generic/CompoundInstruction;)Lcom/sun/org/apache/bcel/internal/generic/InstructionHandle;
pop
5: .line 65
goto 30
6: .line 68
StackMap locals:
StackMap stack:
aload 0 /* this */
invokevirtual com.sun.org.apache.xalan.internal.xsltc.compiler.ConcatCall.argument:()Lcom/sun/org/apache/xalan/internal/xsltc/compiler/Expression;
aload 1 /* classGen */
aload 2 /* methodGen */
invokevirtual com.sun.org.apache.xalan.internal.xsltc.compiler.Expression.translate:(Lcom/sun/org/apache/xalan/internal/xsltc/compiler/util/ClassGenerator;Lcom/sun/org/apache/xalan/internal/xsltc/compiler/util/MethodGenerator;)V
7: .line 69
goto 30
8: .line 72
StackMap locals:
StackMap stack:
aload 3 /* cpg */
ldc "java.lang.StringBuffer"
9: .line 73
ldc "<init>"
ldc "()V"
10: .line 72
invokevirtual com.sun.org.apache.bcel.internal.generic.ConstantPoolGen.addMethodref:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)I
istore 6 /* initBuffer */
start local 6 // int initBuffer
11: .line 75
new com.sun.org.apache.bcel.internal.generic.INVOKEVIRTUAL
dup
aload 3 /* cpg */
ldc "java.lang.StringBuffer"
12: .line 76
ldc "append"
13: .line 77
ldc "(Ljava/lang/String;)Ljava/lang/StringBuffer;"
14: .line 75
invokevirtual com.sun.org.apache.bcel.internal.generic.ConstantPoolGen.addMethodref:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)I
invokespecial com.sun.org.apache.bcel.internal.generic.INVOKEVIRTUAL.<init>:(I)V
15: .line 74
astore 7 /* append */
start local 7 // com.sun.org.apache.bcel.internal.generic.Instruction append
16: .line 80
aload 3 /* cpg */
ldc "java.lang.StringBuffer"
17: .line 81
ldc "toString"
18: .line 82
ldc "()Ljava/lang/String;"
19: .line 80
invokevirtual com.sun.org.apache.bcel.internal.generic.ConstantPoolGen.addMethodref:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)I
istore 8 /* toString */
start local 8 // int toString
20: .line 84
aload 4 /* il */
new com.sun.org.apache.bcel.internal.generic.NEW
dup
aload 3 /* cpg */
ldc "java.lang.StringBuffer"
invokevirtual com.sun.org.apache.bcel.internal.generic.ConstantPoolGen.addClass:(Ljava/lang/String;)I
invokespecial com.sun.org.apache.bcel.internal.generic.NEW.<init>:(I)V
invokevirtual com.sun.org.apache.bcel.internal.generic.InstructionList.append:(Lcom/sun/org/apache/bcel/internal/generic/Instruction;)Lcom/sun/org/apache/bcel/internal/generic/InstructionHandle;
pop
21: .line 85
aload 4 /* il */
getstatic com.sun.org.apache.xalan.internal.xsltc.compiler.ConcatCall.DUP:Lcom/sun/org/apache/bcel/internal/generic/StackInstruction;
invokevirtual com.sun.org.apache.bcel.internal.generic.InstructionList.append:(Lcom/sun/org/apache/bcel/internal/generic/Instruction;)Lcom/sun/org/apache/bcel/internal/generic/InstructionHandle;
pop
22: .line 86
aload 4 /* il */
new com.sun.org.apache.bcel.internal.generic.INVOKESPECIAL
dup
iload 6 /* initBuffer */
invokespecial com.sun.org.apache.bcel.internal.generic.INVOKESPECIAL.<init>:(I)V
invokevirtual com.sun.org.apache.bcel.internal.generic.InstructionList.append:(Lcom/sun/org/apache/bcel/internal/generic/Instruction;)Lcom/sun/org/apache/bcel/internal/generic/InstructionHandle;
pop
23: .line 87
iconst_0
istore 9 /* i */
start local 9 // int i
24: goto 28
25: .line 88
StackMap locals: com.sun.org.apache.xalan.internal.xsltc.compiler.ConcatCall com.sun.org.apache.xalan.internal.xsltc.compiler.util.ClassGenerator com.sun.org.apache.xalan.internal.xsltc.compiler.util.MethodGenerator com.sun.org.apache.bcel.internal.generic.ConstantPoolGen com.sun.org.apache.bcel.internal.generic.InstructionList int int com.sun.org.apache.bcel.internal.generic.Instruction int int
StackMap stack:
aload 0 /* this */
iload 9 /* i */
invokevirtual com.sun.org.apache.xalan.internal.xsltc.compiler.ConcatCall.argument:(I)Lcom/sun/org/apache/xalan/internal/xsltc/compiler/Expression;
aload 1 /* classGen */
aload 2 /* methodGen */
invokevirtual com.sun.org.apache.xalan.internal.xsltc.compiler.Expression.translate:(Lcom/sun/org/apache/xalan/internal/xsltc/compiler/util/ClassGenerator;Lcom/sun/org/apache/xalan/internal/xsltc/compiler/util/MethodGenerator;)V
26: .line 89
aload 4 /* il */
aload 7 /* append */
invokevirtual com.sun.org.apache.bcel.internal.generic.InstructionList.append:(Lcom/sun/org/apache/bcel/internal/generic/Instruction;)Lcom/sun/org/apache/bcel/internal/generic/InstructionHandle;
pop
27: .line 87
iinc 9 /* i */ 1
StackMap locals:
StackMap stack:
28: iload 9 /* i */
iload 5 /* nArgs */
if_icmplt 25
end local 9 // int i
29: .line 91
aload 4 /* il */
new com.sun.org.apache.bcel.internal.generic.INVOKEVIRTUAL
dup
iload 8 /* toString */
invokespecial com.sun.org.apache.bcel.internal.generic.INVOKEVIRTUAL.<init>:(I)V
invokevirtual com.sun.org.apache.bcel.internal.generic.InstructionList.append:(Lcom/sun/org/apache/bcel/internal/generic/Instruction;)Lcom/sun/org/apache/bcel/internal/generic/InstructionHandle;
pop
end local 8 // int toString
end local 7 // com.sun.org.apache.bcel.internal.generic.Instruction append
end local 6 // int initBuffer
30: .line 93
StackMap locals: com.sun.org.apache.xalan.internal.xsltc.compiler.ConcatCall com.sun.org.apache.xalan.internal.xsltc.compiler.util.ClassGenerator com.sun.org.apache.xalan.internal.xsltc.compiler.util.MethodGenerator com.sun.org.apache.bcel.internal.generic.ConstantPoolGen com.sun.org.apache.bcel.internal.generic.InstructionList int
StackMap stack:
return
end local 5 // int nArgs
end local 4 // com.sun.org.apache.bcel.internal.generic.InstructionList il
end local 3 // com.sun.org.apache.bcel.internal.generic.ConstantPoolGen cpg
end local 2 // com.sun.org.apache.xalan.internal.xsltc.compiler.util.MethodGenerator methodGen
end local 1 // com.sun.org.apache.xalan.internal.xsltc.compiler.util.ClassGenerator classGen
end local 0 // com.sun.org.apache.xalan.internal.xsltc.compiler.ConcatCall this
LocalVariableTable:
Start End Slot Name Signature
0 31 0 this Lcom/sun/org/apache/xalan/internal/xsltc/compiler/ConcatCall;
0 31 1 classGen Lcom/sun/org/apache/xalan/internal/xsltc/compiler/util/ClassGenerator;
0 31 2 methodGen Lcom/sun/org/apache/xalan/internal/xsltc/compiler/util/MethodGenerator;
1 31 3 cpg Lcom/sun/org/apache/bcel/internal/generic/ConstantPoolGen;
2 31 4 il Lcom/sun/org/apache/bcel/internal/generic/InstructionList;
3 31 5 nArgs I
11 30 6 initBuffer I
16 30 7 append Lcom/sun/org/apache/bcel/internal/generic/Instruction;
20 30 8 toString I
24 29 9 i I
MethodParameters:
Name Flags
classGen
methodGen
}
SourceFile: "ConcatCall.java"