final class com.sun.org.apache.xalan.internal.xsltc.compiler.StartsWithCall 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.StartsWithCall
super_class: com.sun.org.apache.xalan.internal.xsltc.compiler.FunctionCall
{
private com.sun.org.apache.xalan.internal.xsltc.compiler.Expression _base;
descriptor: Lcom/sun/org/apache/xalan/internal/xsltc/compiler/Expression;
flags: (0x0002) ACC_PRIVATE
private com.sun.org.apache.xalan.internal.xsltc.compiler.Expression _token;
descriptor: Lcom/sun/org/apache/xalan/internal/xsltc/compiler/Expression;
flags: (0x0002) ACC_PRIVATE
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.StartsWithCall this
start local 1 // com.sun.org.apache.xalan.internal.xsltc.compiler.QName fname
start local 2 // java.util.List arguments
0: .line 48
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 41
aload 0 /* this */
aconst_null
putfield com.sun.org.apache.xalan.internal.xsltc.compiler.StartsWithCall._base:Lcom/sun/org/apache/xalan/internal/xsltc/compiler/Expression;
2: .line 42
aload 0 /* this */
aconst_null
putfield com.sun.org.apache.xalan.internal.xsltc.compiler.StartsWithCall._token:Lcom/sun/org/apache/xalan/internal/xsltc/compiler/Expression;
3: .line 49
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.StartsWithCall this
LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lcom/sun/org/apache/xalan/internal/xsltc/compiler/StartsWithCall;
0 4 1 fname Lcom/sun/org/apache/xalan/internal/xsltc/compiler/QName;
0 4 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=5, locals=4, args_size=2
start local 0 // com.sun.org.apache.xalan.internal.xsltc.compiler.StartsWithCall this
start local 1 // com.sun.org.apache.xalan.internal.xsltc.compiler.SymbolTable stable
0: .line 57
aload 0 /* this */
invokevirtual com.sun.org.apache.xalan.internal.xsltc.compiler.StartsWithCall.argumentCount:()I
iconst_2
if_icmpeq 5
1: .line 58
new com.sun.org.apache.xalan.internal.xsltc.compiler.util.ErrorMsg
dup
ldc "ILLEGAL_ARG_ERR"
2: .line 59
aload 0 /* this */
invokevirtual com.sun.org.apache.xalan.internal.xsltc.compiler.StartsWithCall.getName:()Ljava/lang/String;
aload 0 /* this */
3: .line 58
invokespecial com.sun.org.apache.xalan.internal.xsltc.compiler.util.ErrorMsg.<init>:(Ljava/lang/String;Ljava/lang/Object;Lcom/sun/org/apache/xalan/internal/xsltc/compiler/SyntaxTreeNode;)V
astore 2 /* err */
start local 2 // com.sun.org.apache.xalan.internal.xsltc.compiler.util.ErrorMsg err
4: .line 60
new com.sun.org.apache.xalan.internal.xsltc.compiler.util.TypeCheckError
dup
aload 2 /* err */
invokespecial com.sun.org.apache.xalan.internal.xsltc.compiler.util.TypeCheckError.<init>:(Lcom/sun/org/apache/xalan/internal/xsltc/compiler/util/ErrorMsg;)V
athrow
end local 2 // com.sun.org.apache.xalan.internal.xsltc.compiler.util.ErrorMsg err
5: .line 64
StackMap locals:
StackMap stack:
aload 0 /* this */
aload 0 /* this */
iconst_0
invokevirtual com.sun.org.apache.xalan.internal.xsltc.compiler.StartsWithCall.argument:(I)Lcom/sun/org/apache/xalan/internal/xsltc/compiler/Expression;
putfield com.sun.org.apache.xalan.internal.xsltc.compiler.StartsWithCall._base:Lcom/sun/org/apache/xalan/internal/xsltc/compiler/Expression;
6: .line 65
aload 0 /* this */
getfield com.sun.org.apache.xalan.internal.xsltc.compiler.StartsWithCall._base:Lcom/sun/org/apache/xalan/internal/xsltc/compiler/Expression;
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;
astore 2 /* baseType */
start local 2 // com.sun.org.apache.xalan.internal.xsltc.compiler.util.Type baseType
7: .line 66
aload 2 /* baseType */
getstatic com.sun.org.apache.xalan.internal.xsltc.compiler.util.Type.String:Lcom/sun/org/apache/xalan/internal/xsltc/compiler/util/Type;
if_acmpeq 9
8: .line 67
aload 0 /* this */
new com.sun.org.apache.xalan.internal.xsltc.compiler.CastExpr
dup
aload 0 /* this */
getfield com.sun.org.apache.xalan.internal.xsltc.compiler.StartsWithCall._base:Lcom/sun/org/apache/xalan/internal/xsltc/compiler/Expression;
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
putfield com.sun.org.apache.xalan.internal.xsltc.compiler.StartsWithCall._base:Lcom/sun/org/apache/xalan/internal/xsltc/compiler/Expression;
9: .line 70
StackMap locals: com.sun.org.apache.xalan.internal.xsltc.compiler.util.Type
StackMap stack:
aload 0 /* this */
aload 0 /* this */
iconst_1
invokevirtual com.sun.org.apache.xalan.internal.xsltc.compiler.StartsWithCall.argument:(I)Lcom/sun/org/apache/xalan/internal/xsltc/compiler/Expression;
putfield com.sun.org.apache.xalan.internal.xsltc.compiler.StartsWithCall._token:Lcom/sun/org/apache/xalan/internal/xsltc/compiler/Expression;
10: .line 71
aload 0 /* this */
getfield com.sun.org.apache.xalan.internal.xsltc.compiler.StartsWithCall._token:Lcom/sun/org/apache/xalan/internal/xsltc/compiler/Expression;
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;
astore 3 /* tokenType */
start local 3 // com.sun.org.apache.xalan.internal.xsltc.compiler.util.Type tokenType
11: .line 72
aload 3 /* tokenType */
getstatic com.sun.org.apache.xalan.internal.xsltc.compiler.util.Type.String:Lcom/sun/org/apache/xalan/internal/xsltc/compiler/util/Type;
if_acmpeq 13
12: .line 73
aload 0 /* this */
new com.sun.org.apache.xalan.internal.xsltc.compiler.CastExpr
dup
aload 0 /* this */
getfield com.sun.org.apache.xalan.internal.xsltc.compiler.StartsWithCall._token:Lcom/sun/org/apache/xalan/internal/xsltc/compiler/Expression;
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
putfield com.sun.org.apache.xalan.internal.xsltc.compiler.StartsWithCall._token:Lcom/sun/org/apache/xalan/internal/xsltc/compiler/Expression;
13: .line 75
StackMap locals: com.sun.org.apache.xalan.internal.xsltc.compiler.util.Type
StackMap stack:
aload 0 /* this */
getstatic com.sun.org.apache.xalan.internal.xsltc.compiler.util.Type.Boolean:Lcom/sun/org/apache/xalan/internal/xsltc/compiler/util/Type;
dup_x1
putfield com.sun.org.apache.xalan.internal.xsltc.compiler.StartsWithCall._type:Lcom/sun/org/apache/xalan/internal/xsltc/compiler/util/Type;
areturn
end local 3 // com.sun.org.apache.xalan.internal.xsltc.compiler.util.Type tokenType
end local 2 // com.sun.org.apache.xalan.internal.xsltc.compiler.util.Type baseType
end local 1 // com.sun.org.apache.xalan.internal.xsltc.compiler.SymbolTable stable
end local 0 // com.sun.org.apache.xalan.internal.xsltc.compiler.StartsWithCall this
LocalVariableTable:
Start End Slot Name Signature
0 14 0 this Lcom/sun/org/apache/xalan/internal/xsltc/compiler/StartsWithCall;
0 14 1 stable Lcom/sun/org/apache/xalan/internal/xsltc/compiler/SymbolTable;
4 5 2 err Lcom/sun/org/apache/xalan/internal/xsltc/compiler/util/ErrorMsg;
7 14 2 baseType Lcom/sun/org/apache/xalan/internal/xsltc/compiler/util/Type;
11 14 3 tokenType Lcom/sun/org/apache/xalan/internal/xsltc/compiler/util/Type;
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=7, locals=5, args_size=3
start local 0 // com.sun.org.apache.xalan.internal.xsltc.compiler.StartsWithCall 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 82
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 83
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 84
aload 0 /* this */
getfield com.sun.org.apache.xalan.internal.xsltc.compiler.StartsWithCall._base: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
3: .line 85
aload 0 /* this */
getfield com.sun.org.apache.xalan.internal.xsltc.compiler.StartsWithCall._token: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
4: .line 86
aload 4 /* il */
new com.sun.org.apache.bcel.internal.generic.INVOKEVIRTUAL
dup
aload 3 /* cpg */
ldc "java.lang.String"
5: .line 87
ldc "startsWith"
6: .line 88
ldc "(Ljava/lang/String;)Z"
7: .line 86
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
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
8: .line 89
return
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.StartsWithCall this
LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Lcom/sun/org/apache/xalan/internal/xsltc/compiler/StartsWithCall;
0 9 1 classGen Lcom/sun/org/apache/xalan/internal/xsltc/compiler/util/ClassGenerator;
0 9 2 methodGen Lcom/sun/org/apache/xalan/internal/xsltc/compiler/util/MethodGenerator;
1 9 3 cpg Lcom/sun/org/apache/bcel/internal/generic/ConstantPoolGen;
2 9 4 il Lcom/sun/org/apache/bcel/internal/generic/InstructionList;
MethodParameters:
Name Flags
classGen
methodGen
}
SourceFile: "StartsWithCall.java"