public class org.eclipse.jdt.internal.launching.JavaLaunchableTester extends org.eclipse.core.expressions.PropertyTester
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: org.eclipse.jdt.internal.launching.JavaLaunchableTester
super_class: org.eclipse.core.expressions.PropertyTester
{
private static final java.lang.String PROPERTY_HAS_MAIN;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: "hasMain"
private static final java.lang.String PROPERTY_HAS_METHOD;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: "hasMethod"
private static final java.lang.String PROPERTY_HAS_METHOD_WITH_ANNOTATION;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: "hasMethodWithAnnotation"
private static final java.lang.String PROPERTY_HAS_TYPE_WITH_ANNOTATION;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: "hasTypeWithAnnotation"
private static final java.lang.String PROPERTY_EXTENDS_CLASS;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: "extendsClass"
private static final java.lang.String PROPERTY_IS_CONTAINER;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: "isContainer"
private static final java.lang.String PROPERTY_IS_PACKAGE_FRAGMENT;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: "isPackageFragment"
private static final java.lang.String PROPERTY_IS_PACKAGE_FRAGMENT_ROOT;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: "isPackageFragmentRoot"
private static final java.lang.String PROPERTY_PROJECT_NATURE;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: "hasProjectNature"
private static final java.lang.String PROPERTY_EXTENDS_INTERFACE;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: "extendsInterface"
private static final java.lang.String PROPERTY_BUILDPATH_REFERENCE;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: "buildpathReference"
private static java.util.Map<java.lang.String, java.lang.Integer> fgModifiers;
descriptor: Ljava/util/Map;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Signature: Ljava/util/Map<Ljava/lang/String;Ljava/lang/Integer;>;
private static final int FLAGS_MASK;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 1343
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=5, locals=0, args_size=0
0: new java.util.HashMap
dup
invokespecial java.util.HashMap.<init>:()V
putstatic org.eclipse.jdt.internal.launching.JavaLaunchableTester.fgModifiers:Ljava/util/Map;
1: getstatic org.eclipse.jdt.internal.launching.JavaLaunchableTester.fgModifiers:Ljava/util/Map;
ldc "public"
new java.lang.Integer
dup
iconst_1
invokespecial java.lang.Integer.<init>:(I)V
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
2: getstatic org.eclipse.jdt.internal.launching.JavaLaunchableTester.fgModifiers:Ljava/util/Map;
ldc "protected"
new java.lang.Integer
dup
iconst_4
invokespecial java.lang.Integer.<init>:(I)V
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
3: getstatic org.eclipse.jdt.internal.launching.JavaLaunchableTester.fgModifiers:Ljava/util/Map;
ldc "private"
new java.lang.Integer
dup
iconst_2
invokespecial java.lang.Integer.<init>:(I)V
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
4: getstatic org.eclipse.jdt.internal.launching.JavaLaunchableTester.fgModifiers:Ljava/util/Map;
ldc "static"
new java.lang.Integer
dup
bipush 8
invokespecial java.lang.Integer.<init>:(I)V
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
5: getstatic org.eclipse.jdt.internal.launching.JavaLaunchableTester.fgModifiers:Ljava/util/Map;
ldc "final"
new java.lang.Integer
dup
bipush 16
invokespecial java.lang.Integer.<init>:(I)V
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
6: getstatic org.eclipse.jdt.internal.launching.JavaLaunchableTester.fgModifiers:Ljava/util/Map;
ldc "synchronized"
new java.lang.Integer
dup
bipush 32
invokespecial java.lang.Integer.<init>:(I)V
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
7: getstatic org.eclipse.jdt.internal.launching.JavaLaunchableTester.fgModifiers:Ljava/util/Map;
ldc "abstract"
new java.lang.Integer
dup
sipush 1024
invokespecial java.lang.Integer.<init>:(I)V
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
8: getstatic org.eclipse.jdt.internal.launching.JavaLaunchableTester.fgModifiers:Ljava/util/Map;
ldc "native"
new java.lang.Integer
dup
sipush 256
invokespecial java.lang.Integer.<init>:(I)V
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
9: return
LocalVariableTable:
Start End Slot Name Signature
public void <init>();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokespecial org.eclipse.core.expressions.PropertyTester.<init>:()V
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/eclipse/jdt/internal/launching/JavaLaunchableTester;
private org.eclipse.jdt.core.IType getType(org.eclipse.jdt.core.IJavaElement);
descriptor: (Lorg/eclipse/jdt/core/IJavaElement;)Lorg/eclipse/jdt/core/IType;
flags: (0x0002) ACC_PRIVATE
Code:
stack=1, locals=3, args_size=2
start local 0 start local 1 0: aconst_null
astore 2
start local 2 1: aload 1
instanceof org.eclipse.jdt.core.ICompilationUnit
ifeq 4
2: aload 1
checkcast org.eclipse.jdt.core.ICompilationUnit
invokeinterface org.eclipse.jdt.core.ICompilationUnit.findPrimaryType:()Lorg/eclipse/jdt/core/IType;
astore 2
3: goto 12
4: StackMap locals: org.eclipse.jdt.core.IType
StackMap stack:
aload 1
instanceof org.eclipse.jdt.core.IOrdinaryClassFile
ifeq 7
5: aload 1
checkcast org.eclipse.jdt.core.IOrdinaryClassFile
invokeinterface org.eclipse.jdt.core.IOrdinaryClassFile.getType:()Lorg/eclipse/jdt/core/IType;
astore 2
6: goto 12
7: StackMap locals:
StackMap stack:
aload 1
instanceof org.eclipse.jdt.core.IType
ifeq 10
8: aload 1
checkcast org.eclipse.jdt.core.IType
astore 2
9: goto 12
10: StackMap locals:
StackMap stack:
aload 1
instanceof org.eclipse.jdt.core.IMember
ifeq 12
11: aload 1
checkcast org.eclipse.jdt.core.IMember
invokeinterface org.eclipse.jdt.core.IMember.getDeclaringType:()Lorg/eclipse/jdt/core/IType;
astore 2
12: StackMap locals:
StackMap stack:
aload 2
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 13 0 this Lorg/eclipse/jdt/internal/launching/JavaLaunchableTester;
0 13 1 element Lorg/eclipse/jdt/core/IJavaElement;
1 13 2 type Lorg/eclipse/jdt/core/IType;
MethodParameters:
Name Flags
element
private boolean hasMain(org.eclipse.jdt.core.IJavaElement);
descriptor: (Lorg/eclipse/jdt/core/IJavaElement;)Z
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=5, args_size=2
start local 0 start local 1 0: aload 0
aload 1
invokevirtual org.eclipse.jdt.internal.launching.JavaLaunchableTester.getType:(Lorg/eclipse/jdt/core/IJavaElement;)Lorg/eclipse/jdt/core/IType;
astore 2
start local 2 1: aload 2
ifnull 14
aload 2
invokeinterface org.eclipse.jdt.core.IType.exists:()Z
ifeq 14
2: aload 0
aload 2
invokevirtual org.eclipse.jdt.internal.launching.JavaLaunchableTester.hasMainMethod:(Lorg/eclipse/jdt/core/IType;)Z
ifeq 4
3: iconst_1
ireturn
4: StackMap locals: org.eclipse.jdt.core.IType
StackMap stack:
aload 2
invokeinterface org.eclipse.jdt.core.IType.getChildren:()[Lorg/eclipse/jdt/core/IJavaElement;
astore 3
start local 3 5: iconst_0
istore 4
start local 4 6: goto 10
7: StackMap locals: org.eclipse.jdt.core.IJavaElement[] int
StackMap stack:
aload 0
aload 0
aload 3
iload 4
aaload
invokevirtual org.eclipse.jdt.internal.launching.JavaLaunchableTester.getType:(Lorg/eclipse/jdt/core/IJavaElement;)Lorg/eclipse/jdt/core/IType;
invokevirtual org.eclipse.jdt.internal.launching.JavaLaunchableTester.hasMainInChildren:(Lorg/eclipse/jdt/core/IType;)Z
ifeq 9
8: iconst_1
ireturn
9: StackMap locals:
StackMap stack:
iinc 4 1
StackMap locals:
StackMap stack:
10: iload 4
aload 3
arraylength
if_icmplt 7
end local 4 end local 3 end local 2 11: goto 14
12: StackMap locals: org.eclipse.jdt.internal.launching.JavaLaunchableTester org.eclipse.jdt.core.IJavaElement
StackMap stack: org.eclipse.jdt.core.JavaModelException
pop
goto 14
13: StackMap locals:
StackMap stack: org.eclipse.core.runtime.CoreException
pop
14: StackMap locals:
StackMap stack:
iconst_0
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 15 0 this Lorg/eclipse/jdt/internal/launching/JavaLaunchableTester;
0 15 1 element Lorg/eclipse/jdt/core/IJavaElement;
1 11 2 type Lorg/eclipse/jdt/core/IType;
5 11 3 children [Lorg/eclipse/jdt/core/IJavaElement;
6 11 4 i I
Exception table:
from to target type
0 3 12 Class org.eclipse.jdt.core.JavaModelException
4 8 12 Class org.eclipse.jdt.core.JavaModelException
9 11 12 Class org.eclipse.jdt.core.JavaModelException
0 3 13 Class org.eclipse.core.runtime.CoreException
4 8 13 Class org.eclipse.core.runtime.CoreException
9 11 13 Class org.eclipse.core.runtime.CoreException
MethodParameters:
Name Flags
element
private boolean hasMainMethod(org.eclipse.jdt.core.IType);
descriptor: (Lorg/eclipse/jdt/core/IType;)Z
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=4, args_size=2
start local 0 start local 1 0: aload 1
invokeinterface org.eclipse.jdt.core.IType.getMethods:()[Lorg/eclipse/jdt/core/IMethod;
astore 2
start local 2 1: iconst_0
istore 3
start local 3 2: goto 6
3: StackMap locals: org.eclipse.jdt.core.IMethod[] int
StackMap stack:
aload 2
iload 3
aaload
invokeinterface org.eclipse.jdt.core.IMethod.isMainMethod:()Z
ifeq 5
4: iconst_1
ireturn
5: StackMap locals:
StackMap stack:
iinc 3 1
StackMap locals:
StackMap stack:
6: iload 3
aload 2
arraylength
if_icmplt 3
end local 3 7: iconst_0
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lorg/eclipse/jdt/internal/launching/JavaLaunchableTester;
0 8 1 type Lorg/eclipse/jdt/core/IType;
1 8 2 methods [Lorg/eclipse/jdt/core/IMethod;
2 7 3 i I
Exceptions:
throws org.eclipse.jdt.core.JavaModelException
MethodParameters:
Name Flags
type
private boolean hasMainInChildren(org.eclipse.jdt.core.IType);
descriptor: (Lorg/eclipse/jdt/core/IType;)Z
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=4, args_size=2
start local 0 start local 1 0: aload 1
invokeinterface org.eclipse.jdt.core.IType.isClass:()Z
aload 1
invokeinterface org.eclipse.jdt.core.IType.getFlags:()I
invokestatic org.eclipse.jdt.core.Flags.isStatic:(I)Z
iand
ifeq 10
1: aload 0
aload 1
invokevirtual org.eclipse.jdt.internal.launching.JavaLaunchableTester.hasMainMethod:(Lorg/eclipse/jdt/core/IType;)Z
ifeq 3
2: iconst_1
ireturn
3: StackMap locals:
StackMap stack:
aload 1
invokeinterface org.eclipse.jdt.core.IType.getChildren:()[Lorg/eclipse/jdt/core/IJavaElement;
astore 2
start local 2 4: iconst_0
istore 3
start local 3 5: goto 9
6: StackMap locals: org.eclipse.jdt.core.IJavaElement[] int
StackMap stack:
aload 2
iload 3
aaload
invokeinterface org.eclipse.jdt.core.IJavaElement.getElementType:()I
bipush 7
if_icmpne 8
7: aload 0
aload 2
iload 3
aaload
checkcast org.eclipse.jdt.core.IType
invokevirtual org.eclipse.jdt.internal.launching.JavaLaunchableTester.hasMainInChildren:(Lorg/eclipse/jdt/core/IType;)Z
ireturn
8: StackMap locals:
StackMap stack:
iinc 3 1
StackMap locals:
StackMap stack:
9: iload 3
aload 2
arraylength
if_icmplt 6
end local 3 end local 2 10: StackMap locals:
StackMap stack:
iconst_0
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 11 0 this Lorg/eclipse/jdt/internal/launching/JavaLaunchableTester;
0 11 1 type Lorg/eclipse/jdt/core/IType;
4 10 2 children [Lorg/eclipse/jdt/core/IJavaElement;
5 10 3 i I
Exceptions:
throws org.eclipse.core.runtime.CoreException
MethodParameters:
Name Flags
type
private boolean hasMethod(org.eclipse.jdt.core.IJavaElement, java.lang.Object[]);
descriptor: (Lorg/eclipse/jdt/core/IJavaElement;[Ljava/lang/Object;)Z
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=15, args_size=3
start local 0 start local 1 start local 2 0: aload 2
arraylength
iconst_1
if_icmple 25
1: aload 0
aload 1
invokevirtual org.eclipse.jdt.internal.launching.JavaLaunchableTester.getType:(Lorg/eclipse/jdt/core/IJavaElement;)Lorg/eclipse/jdt/core/IType;
astore 3
start local 3 2: aload 3
ifnull 25
aload 3
invokeinterface org.eclipse.jdt.core.IType.exists:()Z
ifeq 25
3: aload 2
iconst_0
aaload
checkcast java.lang.String
astore 4
start local 4 4: aload 2
iconst_1
aaload
checkcast java.lang.String
astore 5
start local 5 5: aload 5
invokestatic org.eclipse.jdt.core.Signature.getParameterTypes:(Ljava/lang/String;)[Ljava/lang/String;
astore 6
start local 6 6: aload 5
invokestatic org.eclipse.jdt.core.Signature.getReturnType:(Ljava/lang/String;)Ljava/lang/String;
astore 7
start local 7 7: aload 3
aload 4
aload 6
invokeinterface org.eclipse.jdt.core.IType.getMethod:(Ljava/lang/String;[Ljava/lang/String;)Lorg/eclipse/jdt/core/IMethod;
astore 8
start local 8 8: aload 8
invokeinterface org.eclipse.jdt.core.IMethod.exists:()Z
ifeq 25
9: aload 8
invokeinterface org.eclipse.jdt.core.IMethod.getReturnType:()Ljava/lang/String;
aload 7
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 25
10: aload 2
arraylength
iconst_2
if_icmple 25
11: aload 2
iconst_2
aaload
checkcast java.lang.String
astore 9
start local 9 12: aload 9
ldc " "
invokevirtual java.lang.String.split:(Ljava/lang/String;)[Ljava/lang/String;
astore 10
start local 10 13: iconst_0
istore 11
start local 11 14: iconst_0
istore 12
start local 12 15: goto 21
16: StackMap locals: org.eclipse.jdt.internal.launching.JavaLaunchableTester org.eclipse.jdt.core.IJavaElement java.lang.Object[] org.eclipse.jdt.core.IType java.lang.String java.lang.String java.lang.String[] java.lang.String org.eclipse.jdt.core.IMethod java.lang.String java.lang.String[] int int
StackMap stack:
aload 10
iload 12
aaload
astore 13
start local 13 17: getstatic org.eclipse.jdt.internal.launching.JavaLaunchableTester.fgModifiers:Ljava/util/Map;
aload 13
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.lang.Integer
astore 14
start local 14 18: aload 14
ifnull 20
19: iload 11
aload 14
invokevirtual java.lang.Integer.intValue:()I
ior
istore 11
end local 14 end local 13 20: StackMap locals:
StackMap stack:
iinc 12 1
StackMap locals:
StackMap stack:
21: iload 12
aload 10
arraylength
if_icmplt 16
end local 12 22: aload 8
invokeinterface org.eclipse.jdt.core.IMethod.getFlags:()I
iload 11
if_icmpne 25
23: iconst_1
ireturn
end local 11 end local 10 end local 9 end local 8 end local 7 end local 6 end local 5 end local 4 end local 3 24: StackMap locals: org.eclipse.jdt.internal.launching.JavaLaunchableTester org.eclipse.jdt.core.IJavaElement java.lang.Object[]
StackMap stack: org.eclipse.jdt.core.JavaModelException
pop
25: StackMap locals:
StackMap stack:
iconst_0
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 26 0 this Lorg/eclipse/jdt/internal/launching/JavaLaunchableTester;
0 26 1 element Lorg/eclipse/jdt/core/IJavaElement;
0 26 2 args [Ljava/lang/Object;
2 24 3 type Lorg/eclipse/jdt/core/IType;
4 24 4 name Ljava/lang/String;
5 24 5 signature Ljava/lang/String;
6 24 6 parms [Ljava/lang/String;
7 24 7 returnType Ljava/lang/String;
8 24 8 candidate Lorg/eclipse/jdt/core/IMethod;
12 24 9 modifierText Ljava/lang/String;
13 24 10 modifiers [Ljava/lang/String;
14 24 11 flags I
15 22 12 j I
17 20 13 modifier Ljava/lang/String;
18 20 14 flag Ljava/lang/Integer;
Exception table:
from to target type
0 23 24 Class org.eclipse.jdt.core.JavaModelException
MethodParameters:
Name Flags
element
args
private boolean hasTypeWithAnnotation(org.eclipse.jdt.core.IJavaElement, java.lang.String);
descriptor: (Lorg/eclipse/jdt/core/IJavaElement;Ljava/lang/String;)Z
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=9, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 1
invokevirtual org.eclipse.jdt.internal.launching.JavaLaunchableTester.getType:(Lorg/eclipse/jdt/core/IJavaElement;)Lorg/eclipse/jdt/core/IType;
astore 3
start local 3 1: aload 3
ifnull 2
aload 3
invokeinterface org.eclipse.jdt.core.IType.exists:()Z
ifne 3
2: StackMap locals: org.eclipse.jdt.core.IType
StackMap stack:
iconst_0
ireturn
3: StackMap locals:
StackMap stack:
aconst_null
astore 4
start local 4 4: aload 3
invokeinterface org.eclipse.jdt.core.IType.getOpenable:()Lorg/eclipse/jdt/core/IOpenable;
astore 5
start local 5 5: aload 5
instanceof org.eclipse.jdt.core.ICompilationUnit
ifeq 8
6: aload 5
checkcast org.eclipse.jdt.core.ICompilationUnit
invokeinterface org.eclipse.jdt.core.ICompilationUnit.getBuffer:()Lorg/eclipse/jdt/core/IBuffer;
astore 4
7: goto 10
StackMap locals: org.eclipse.jdt.core.IBuffer org.eclipse.jdt.core.IOpenable
StackMap stack:
8: aload 5
instanceof org.eclipse.jdt.core.IClassFile
ifeq 10
9: aload 5
checkcast org.eclipse.jdt.core.IClassFile
invokeinterface org.eclipse.jdt.core.IClassFile.getBuffer:()Lorg/eclipse/jdt/core/IBuffer;
astore 4
10: StackMap locals:
StackMap stack:
aload 4
ifnonnull 12
11: iconst_0
ireturn
12: StackMap locals:
StackMap stack:
aload 3
invokeinterface org.eclipse.jdt.core.IType.getSourceRange:()Lorg/eclipse/jdt/core/ISourceRange;
astore 6
start local 6 13: aload 3
invokeinterface org.eclipse.jdt.core.IType.getNameRange:()Lorg/eclipse/jdt/core/ISourceRange;
astore 7
start local 7 14: aload 6
ifnull 22
aload 7
ifnull 22
15: iconst_0
iconst_0
iconst_1
iconst_0
invokestatic org.eclipse.jdt.core.ToolFactory.createScanner:(ZZZZ)Lorg/eclipse/jdt/core/compiler/IScanner;
astore 8
start local 8 16: aload 8
aload 4
invokeinterface org.eclipse.jdt.core.IBuffer.getCharacters:()[C
invokeinterface org.eclipse.jdt.core.compiler.IScanner.setSource:([C)V
17: aload 8
aload 6
invokeinterface org.eclipse.jdt.core.ISourceRange.getOffset:()I
aload 7
invokeinterface org.eclipse.jdt.core.ISourceRange.getOffset:()I
invokeinterface org.eclipse.jdt.core.compiler.IScanner.resetTo:(II)V
18: aload 0
aload 8
aload 2
invokevirtual org.eclipse.jdt.internal.launching.JavaLaunchableTester.findAnnotation:(Lorg/eclipse/jdt/core/compiler/IScanner;Ljava/lang/String;)Z
ifeq 22
19: iconst_1
ireturn
end local 8 end local 7 end local 6 end local 5 end local 4 end local 3 20: StackMap locals: org.eclipse.jdt.internal.launching.JavaLaunchableTester org.eclipse.jdt.core.IJavaElement java.lang.String
StackMap stack: org.eclipse.jdt.core.JavaModelException
pop
goto 22
21: StackMap locals:
StackMap stack: org.eclipse.jdt.core.compiler.InvalidInputException
pop
22: StackMap locals:
StackMap stack:
iconst_0
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 23 0 this Lorg/eclipse/jdt/internal/launching/JavaLaunchableTester;
0 23 1 element Lorg/eclipse/jdt/core/IJavaElement;
0 23 2 annotationType Ljava/lang/String;
1 20 3 type Lorg/eclipse/jdt/core/IType;
4 20 4 buffer Lorg/eclipse/jdt/core/IBuffer;
5 20 5 openable Lorg/eclipse/jdt/core/IOpenable;
13 20 6 sourceRange Lorg/eclipse/jdt/core/ISourceRange;
14 20 7 nameRange Lorg/eclipse/jdt/core/ISourceRange;
16 20 8 scanner Lorg/eclipse/jdt/core/compiler/IScanner;
Exception table:
from to target type
0 2 20 Class org.eclipse.jdt.core.JavaModelException
3 11 20 Class org.eclipse.jdt.core.JavaModelException
12 19 20 Class org.eclipse.jdt.core.JavaModelException
0 2 21 Class org.eclipse.jdt.core.compiler.InvalidInputException
3 11 21 Class org.eclipse.jdt.core.compiler.InvalidInputException
12 19 21 Class org.eclipse.jdt.core.compiler.InvalidInputException
MethodParameters:
Name Flags
element
annotationType
private boolean hasMethodWithAnnotation(org.eclipse.jdt.core.IJavaElement, java.lang.Object[]);
descriptor: (Lorg/eclipse/jdt/core/IJavaElement;[Ljava/lang/Object;)Z
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=14, args_size=3
start local 0 start local 1 start local 2 0: aload 2
iconst_0
aaload
checkcast java.lang.String
astore 3
start local 3 1: iconst_0
istore 4
start local 4 2: aload 2
arraylength
iconst_1
if_icmple 13
3: aload 2
iconst_1
aaload
checkcast java.lang.String
ldc " "
invokevirtual java.lang.String.split:(Ljava/lang/String;)[Ljava/lang/String;
astore 5
start local 5 4: iconst_0
istore 6
start local 6 5: goto 11
6: StackMap locals: org.eclipse.jdt.internal.launching.JavaLaunchableTester org.eclipse.jdt.core.IJavaElement java.lang.Object[] java.lang.String int java.lang.String[] int
StackMap stack:
aload 5
iload 6
aaload
astore 7
start local 7 7: getstatic org.eclipse.jdt.internal.launching.JavaLaunchableTester.fgModifiers:Ljava/util/Map;
aload 7
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.lang.Integer
astore 8
start local 8 8: aload 8
ifnull 10
9: iload 4
aload 8
invokevirtual java.lang.Integer.intValue:()I
ior
istore 4
end local 8 end local 7 10: StackMap locals:
StackMap stack:
iinc 6 1
StackMap locals:
StackMap stack:
11: iload 6
aload 5
arraylength
if_icmplt 6
end local 6 end local 5 12: goto 14
13: StackMap locals:
StackMap stack:
iconst_m1
istore 4
14: StackMap locals:
StackMap stack:
aload 0
aload 1
invokevirtual org.eclipse.jdt.internal.launching.JavaLaunchableTester.getType:(Lorg/eclipse/jdt/core/IJavaElement;)Lorg/eclipse/jdt/core/IType;
astore 5
start local 5 15: aload 5
ifnull 16
aload 5
invokeinterface org.eclipse.jdt.core.IType.exists:()Z
ifne 17
16: StackMap locals: org.eclipse.jdt.core.IType
StackMap stack:
iconst_0
ireturn
17: StackMap locals:
StackMap stack:
aload 5
invokeinterface org.eclipse.jdt.core.IType.getMethods:()[Lorg/eclipse/jdt/core/IMethod;
astore 6
start local 6 18: aload 6
arraylength
ifne 20
19: iconst_0
ireturn
20: StackMap locals: org.eclipse.jdt.core.IMethod[]
StackMap stack:
aconst_null
astore 7
start local 7 21: aload 5
invokeinterface org.eclipse.jdt.core.IType.getOpenable:()Lorg/eclipse/jdt/core/IOpenable;
astore 8
start local 8 22: aload 8
instanceof org.eclipse.jdt.core.ICompilationUnit
ifeq 25
23: aload 8
checkcast org.eclipse.jdt.core.ICompilationUnit
invokeinterface org.eclipse.jdt.core.ICompilationUnit.getBuffer:()Lorg/eclipse/jdt/core/IBuffer;
astore 7
24: goto 27
StackMap locals: org.eclipse.jdt.core.IBuffer org.eclipse.jdt.core.IOpenable
StackMap stack:
25: aload 8
instanceof org.eclipse.jdt.core.IClassFile
ifeq 27
26: aload 8
checkcast org.eclipse.jdt.core.IClassFile
invokeinterface org.eclipse.jdt.core.IClassFile.getBuffer:()Lorg/eclipse/jdt/core/IBuffer;
astore 7
27: StackMap locals:
StackMap stack:
aload 7
ifnonnull 29
28: iconst_0
ireturn
29: StackMap locals:
StackMap stack:
aconst_null
astore 9
start local 9 30: iconst_0
istore 10
start local 10 31: goto 45
32: StackMap locals: org.eclipse.jdt.core.compiler.IScanner int
StackMap stack:
aload 6
iload 10
aaload
astore 11
start local 11 33: aload 11
invokeinterface org.eclipse.jdt.core.IMethod.isConstructor:()Z
ifne 44
iload 4
iconst_m1
if_icmpeq 35
iload 4
aload 11
invokeinterface org.eclipse.jdt.core.IMethod.getFlags:()I
sipush 1343
iand
if_icmpeq 35
34: goto 44
35: StackMap locals: org.eclipse.jdt.core.IMethod
StackMap stack:
aload 11
invokeinterface org.eclipse.jdt.core.IMethod.getSourceRange:()Lorg/eclipse/jdt/core/ISourceRange;
astore 12
start local 12 36: aload 11
invokeinterface org.eclipse.jdt.core.IMethod.getNameRange:()Lorg/eclipse/jdt/core/ISourceRange;
astore 13
start local 13 37: aload 12
ifnull 44
aload 13
ifnull 44
38: aload 9
ifnonnull 41
39: iconst_0
iconst_0
iconst_1
iconst_0
invokestatic org.eclipse.jdt.core.ToolFactory.createScanner:(ZZZZ)Lorg/eclipse/jdt/core/compiler/IScanner;
astore 9
40: aload 9
aload 7
invokeinterface org.eclipse.jdt.core.IBuffer.getCharacters:()[C
invokeinterface org.eclipse.jdt.core.compiler.IScanner.setSource:([C)V
41: StackMap locals: org.eclipse.jdt.core.ISourceRange org.eclipse.jdt.core.ISourceRange
StackMap stack:
aload 9
aload 12
invokeinterface org.eclipse.jdt.core.ISourceRange.getOffset:()I
aload 13
invokeinterface org.eclipse.jdt.core.ISourceRange.getOffset:()I
invokeinterface org.eclipse.jdt.core.compiler.IScanner.resetTo:(II)V
42: aload 0
aload 9
aload 3
invokevirtual org.eclipse.jdt.internal.launching.JavaLaunchableTester.findAnnotation:(Lorg/eclipse/jdt/core/compiler/IScanner;Ljava/lang/String;)Z
ifeq 44
43: iconst_1
ireturn
end local 13 end local 12 end local 11 44: StackMap locals:
StackMap stack:
iinc 10 1
StackMap locals:
StackMap stack:
45: iload 10
aload 6
arraylength
if_icmplt 32
end local 10 end local 9 end local 8 end local 7 end local 6 end local 5 end local 4 end local 3 46: goto 49
StackMap locals: org.eclipse.jdt.internal.launching.JavaLaunchableTester org.eclipse.jdt.core.IJavaElement java.lang.Object[]
StackMap stack: org.eclipse.jdt.core.JavaModelException
47: pop
goto 49
48: StackMap locals:
StackMap stack: org.eclipse.jdt.core.compiler.InvalidInputException
pop
49: StackMap locals:
StackMap stack:
iconst_0
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 50 0 this Lorg/eclipse/jdt/internal/launching/JavaLaunchableTester;
0 50 1 element Lorg/eclipse/jdt/core/IJavaElement;
0 50 2 args [Ljava/lang/Object;
1 46 3 annotationType Ljava/lang/String;
2 46 4 flags I
4 12 5 modifiers [Ljava/lang/String;
5 12 6 j I
7 10 7 modifier Ljava/lang/String;
8 10 8 flag Ljava/lang/Integer;
15 46 5 type Lorg/eclipse/jdt/core/IType;
18 46 6 methods [Lorg/eclipse/jdt/core/IMethod;
21 46 7 buffer Lorg/eclipse/jdt/core/IBuffer;
22 46 8 openable Lorg/eclipse/jdt/core/IOpenable;
30 46 9 scanner Lorg/eclipse/jdt/core/compiler/IScanner;
31 46 10 i I
33 44 11 curr Lorg/eclipse/jdt/core/IMethod;
36 44 12 sourceRange Lorg/eclipse/jdt/core/ISourceRange;
37 44 13 nameRange Lorg/eclipse/jdt/core/ISourceRange;
Exception table:
from to target type
0 16 47 Class org.eclipse.jdt.core.JavaModelException
17 19 47 Class org.eclipse.jdt.core.JavaModelException
20 28 47 Class org.eclipse.jdt.core.JavaModelException
29 43 47 Class org.eclipse.jdt.core.JavaModelException
44 46 47 Class org.eclipse.jdt.core.JavaModelException
0 16 48 Class org.eclipse.jdt.core.compiler.InvalidInputException
17 19 48 Class org.eclipse.jdt.core.compiler.InvalidInputException
20 28 48 Class org.eclipse.jdt.core.compiler.InvalidInputException
29 43 48 Class org.eclipse.jdt.core.compiler.InvalidInputException
44 46 48 Class org.eclipse.jdt.core.compiler.InvalidInputException
MethodParameters:
Name Flags
element
args
private boolean findAnnotation(org.eclipse.jdt.core.compiler.IScanner, java.lang.String);
descriptor: (Lorg/eclipse/jdt/core/compiler/IScanner;Ljava/lang/String;)Z
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=7, args_size=3
start local 0 start local 1 start local 2 0: aload 2
invokestatic org.eclipse.jdt.core.Signature.getSimpleName:(Ljava/lang/String;)Ljava/lang/String;
astore 3
start local 3 1: new java.lang.StringBuilder
dup
invokespecial java.lang.StringBuilder.<init>:()V
astore 4
start local 4 2: aload 1
invokeinterface org.eclipse.jdt.core.compiler.IScanner.getNextToken:()I
istore 5
start local 5 3: goto 11
4: StackMap locals: java.lang.String java.lang.StringBuilder int
StackMap stack:
iload 5
sipush 401
if_icmpne 10
5: aload 4
iconst_0
invokevirtual java.lang.StringBuilder.setLength:(I)V
6: aload 0
aload 1
aload 4
invokevirtual org.eclipse.jdt.internal.launching.JavaLaunchableTester.readName:(Lorg/eclipse/jdt/core/compiler/IScanner;Ljava/lang/StringBuilder;)I
istore 5
7: aload 4
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
astore 6
start local 6 8: aload 6
aload 2
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifne 9
aload 6
aload 3
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifne 9
aload 6
new java.lang.StringBuilder
dup
bipush 46
invokestatic java.lang.String.valueOf:(C)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 3
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual java.lang.String.endsWith:(Ljava/lang/String;)Z
ifeq 11
9: StackMap locals: java.lang.String
StackMap stack:
iconst_1
ireturn
end local 6 10: StackMap locals:
StackMap stack:
aload 1
invokeinterface org.eclipse.jdt.core.compiler.IScanner.getNextToken:()I
istore 5
11: StackMap locals:
StackMap stack:
iload 5
sipush 158
if_icmpne 4
12: iconst_0
ireturn
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/eclipse/jdt/internal/launching/JavaLaunchableTester;
0 13 1 scanner Lorg/eclipse/jdt/core/compiler/IScanner;
0 13 2 annotationName Ljava/lang/String;
1 13 3 simpleName Ljava/lang/String;
2 13 4 buf Ljava/lang/StringBuilder;
3 13 5 tok I
8 10 6 name Ljava/lang/String;
Exceptions:
throws org.eclipse.jdt.core.compiler.InvalidInputException
MethodParameters:
Name Flags
scanner
annotationName
private int readName(org.eclipse.jdt.core.compiler.IScanner, java.lang.StringBuilder);
descriptor: (Lorg/eclipse/jdt/core/compiler/IScanner;Ljava/lang/StringBuilder;)I
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=4, args_size=3
start local 0 start local 1 start local 2 0: aload 1
invokeinterface org.eclipse.jdt.core.compiler.IScanner.getNextToken:()I
istore 3
start local 3 1: goto 8
2: StackMap locals: int
StackMap stack:
aload 2
aload 1
invokeinterface org.eclipse.jdt.core.compiler.IScanner.getCurrentTokenSource:()[C
invokevirtual java.lang.StringBuilder.append:([C)Ljava/lang/StringBuilder;
pop
3: aload 1
invokeinterface org.eclipse.jdt.core.compiler.IScanner.getNextToken:()I
istore 3
4: iload 3
bipush 6
if_icmpeq 6
5: iload 3
ireturn
6: StackMap locals:
StackMap stack:
aload 2
bipush 46
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
pop
7: aload 1
invokeinterface org.eclipse.jdt.core.compiler.IScanner.getNextToken:()I
istore 3
8: StackMap locals:
StackMap stack:
iload 3
iconst_5
if_icmpeq 2
9: iload 3
ireturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 this Lorg/eclipse/jdt/internal/launching/JavaLaunchableTester;
0 10 1 scanner Lorg/eclipse/jdt/core/compiler/IScanner;
0 10 2 buf Ljava/lang/StringBuilder;
1 10 3 tok I
Exceptions:
throws org.eclipse.jdt.core.compiler.InvalidInputException
MethodParameters:
Name Flags
scanner
buf
private boolean hasProjectNature(org.eclipse.jdt.core.IJavaElement, java.lang.String);
descriptor: (Lorg/eclipse/jdt/core/IJavaElement;Ljava/lang/String;)Z
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=5, args_size=3
start local 0 start local 1 start local 2 0: aload 1
ifnull 7
1: aload 1
invokeinterface org.eclipse.jdt.core.IJavaElement.getJavaProject:()Lorg/eclipse/jdt/core/IJavaProject;
astore 3
start local 3 2: aload 3
ifnull 7
3: aload 3
invokeinterface org.eclipse.jdt.core.IJavaProject.getProject:()Lorg/eclipse/core/resources/IProject;
astore 4
start local 4 4: aload 4
invokeinterface org.eclipse.core.resources.IProject.isAccessible:()Z
ifeq 5
aload 4
aload 2
invokeinterface org.eclipse.core.resources.IProject.hasNature:(Ljava/lang/String;)Z
ifeq 5
iconst_1
ireturn
StackMap locals: org.eclipse.jdt.core.IJavaProject org.eclipse.core.resources.IProject
StackMap stack:
5: iconst_0
6: ireturn
end local 4 end local 3 7: StackMap locals:
StackMap stack:
iconst_0
ireturn
8: StackMap locals:
StackMap stack: org.eclipse.core.runtime.CoreException
pop
iconst_0
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Lorg/eclipse/jdt/internal/launching/JavaLaunchableTester;
0 9 1 element Lorg/eclipse/jdt/core/IJavaElement;
0 9 2 ntype Ljava/lang/String;
2 7 3 jproj Lorg/eclipse/jdt/core/IJavaProject;
4 7 4 proj Lorg/eclipse/core/resources/IProject;
Exception table:
from to target type
0 6 8 Class org.eclipse.core.runtime.CoreException
MethodParameters:
Name Flags
element
ntype
private boolean hasSuperclass(org.eclipse.jdt.core.IJavaElement, java.lang.String);
descriptor: (Lorg/eclipse/jdt/core/IJavaElement;Ljava/lang/String;)Z
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=6, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 1
invokevirtual org.eclipse.jdt.internal.launching.JavaLaunchableTester.getType:(Lorg/eclipse/jdt/core/IJavaElement;)Lorg/eclipse/jdt/core/IType;
astore 3
start local 3 1: aload 3
ifnull 11
2: aload 3
new org.eclipse.core.runtime.NullProgressMonitor
dup
invokespecial org.eclipse.core.runtime.NullProgressMonitor.<init>:()V
invokeinterface org.eclipse.jdt.core.IType.newSupertypeHierarchy:(Lorg/eclipse/core/runtime/IProgressMonitor;)Lorg/eclipse/jdt/core/ITypeHierarchy;
aload 3
invokeinterface org.eclipse.jdt.core.ITypeHierarchy.getAllSuperclasses:(Lorg/eclipse/jdt/core/IType;)[Lorg/eclipse/jdt/core/IType;
astore 4
start local 4 3: iconst_0
istore 5
start local 5 4: goto 8
5: StackMap locals: org.eclipse.jdt.core.IType org.eclipse.jdt.core.IType[] int
StackMap stack:
aload 4
iload 5
aaload
invokeinterface org.eclipse.jdt.core.IType.getFullyQualifiedName:()Ljava/lang/String;
aload 2
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifne 6
aload 4
iload 5
aaload
invokeinterface org.eclipse.jdt.core.IType.getElementName:()Ljava/lang/String;
aload 2
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 7
6: StackMap locals:
StackMap stack:
iconst_1
ireturn
7: StackMap locals:
StackMap stack:
iinc 5 1
StackMap locals:
StackMap stack:
8: iload 5
aload 4
arraylength
if_icmplt 5
end local 5 end local 4 end local 3 9: goto 11
10: StackMap locals: org.eclipse.jdt.internal.launching.JavaLaunchableTester org.eclipse.jdt.core.IJavaElement java.lang.String
StackMap stack: org.eclipse.jdt.core.JavaModelException
pop
11: StackMap locals:
StackMap stack:
iconst_0
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 12 0 this Lorg/eclipse/jdt/internal/launching/JavaLaunchableTester;
0 12 1 element Lorg/eclipse/jdt/core/IJavaElement;
0 12 2 qname Ljava/lang/String;
1 9 3 type Lorg/eclipse/jdt/core/IType;
3 9 4 stypes [Lorg/eclipse/jdt/core/IType;
4 9 5 i I
Exception table:
from to target type
0 6 10 Class org.eclipse.jdt.core.JavaModelException
7 9 10 Class org.eclipse.jdt.core.JavaModelException
MethodParameters:
Name Flags
element
qname
private boolean hasItemOnBuildPath(org.eclipse.jdt.core.IJavaElement, java.lang.Object[]);
descriptor: (Lorg/eclipse/jdt/core/IJavaElement;[Ljava/lang/Object;)Z
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=5, args_size=3
start local 0 start local 1 start local 2 0: aload 1
ifnull 5
aload 2
ifnull 5
1: aload 1
invokeinterface org.eclipse.jdt.core.IJavaElement.getJavaProject:()Lorg/eclipse/jdt/core/IJavaProject;
astore 3
start local 3 2: new java.util.HashSet
dup
invokespecial java.util.HashSet.<init>:()V
astore 4
start local 4 3: aload 4
aload 3
invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
pop
4: aload 0
aload 3
aload 4
aload 2
invokevirtual org.eclipse.jdt.internal.launching.JavaLaunchableTester.hasItemsOnBuildPath:(Lorg/eclipse/jdt/core/IJavaProject;Ljava/util/Set;[Ljava/lang/Object;)Z
ireturn
end local 4 end local 3 5: StackMap locals:
StackMap stack:
iconst_0
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lorg/eclipse/jdt/internal/launching/JavaLaunchableTester;
0 6 1 element Lorg/eclipse/jdt/core/IJavaElement;
0 6 2 args [Ljava/lang/Object;
2 5 3 project Lorg/eclipse/jdt/core/IJavaProject;
3 5 4 searched Ljava/util/Set<Lorg/eclipse/jdt/core/IJavaProject;>;
MethodParameters:
Name Flags
element
args
private boolean hasItemsOnBuildPath(org.eclipse.jdt.core.IJavaProject, java.util.Set<org.eclipse.jdt.core.IJavaProject>, []);
descriptor: (Lorg/eclipse/jdt/core/IJavaProject;Ljava/util/Set;[Ljava/lang/Object;)Z
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=13, args_size=4
start local 0 start local 1 start local 2 start local 3 0: new java.util.ArrayList
dup
invokespecial java.util.ArrayList.<init>:()V
astore 4
start local 4 1: aload 1
ifnull 22
aload 1
invokeinterface org.eclipse.jdt.core.IJavaProject.exists:()Z
ifeq 22
2: aload 1
iconst_1
invokeinterface org.eclipse.jdt.core.IJavaProject.getResolvedClasspath:(Z)[Lorg/eclipse/jdt/core/IClasspathEntry;
astore 5
start local 5 3: iconst_0
istore 6
start local 6 4: goto 21
5: StackMap locals: java.util.List org.eclipse.jdt.core.IClasspathEntry[] int
StackMap stack:
aload 5
iload 6
aaload
astore 7
start local 7 6: aload 7
invokeinterface org.eclipse.jdt.core.IClasspathEntry.getPath:()Lorg/eclipse/core/runtime/IPath;
astore 8
start local 8 7: aload 8
invokeinterface org.eclipse.core.runtime.IPath.toPortableString:()Ljava/lang/String;
astore 9
start local 9 8: iconst_0
istore 10
start local 10 9: goto 13
10: StackMap locals: org.eclipse.jdt.internal.launching.JavaLaunchableTester org.eclipse.jdt.core.IJavaProject java.util.Set java.lang.Object[] java.util.List org.eclipse.jdt.core.IClasspathEntry[] int org.eclipse.jdt.core.IClasspathEntry org.eclipse.core.runtime.IPath java.lang.String int
StackMap stack:
aload 9
aload 3
iload 10
aaload
checkcast java.lang.String
invokevirtual java.lang.String.lastIndexOf:(Ljava/lang/String;)I
iconst_m1
if_icmpeq 12
11: iconst_1
ireturn
12: StackMap locals:
StackMap stack:
iinc 10 1
StackMap locals:
StackMap stack:
13: iload 10
aload 3
arraylength
if_icmplt 10
end local 10 14: aload 7
invokeinterface org.eclipse.jdt.core.IClasspathEntry.getEntryKind:()I
iconst_2
if_icmpne 20
15: aload 7
invokeinterface org.eclipse.jdt.core.IClasspathEntry.getPath:()Lorg/eclipse/core/runtime/IPath;
invokeinterface org.eclipse.core.runtime.IPath.lastSegment:()Ljava/lang/String;
astore 10
start local 10 16: invokestatic org.eclipse.core.resources.ResourcesPlugin.getWorkspace:()Lorg/eclipse/core/resources/IWorkspace;
invokeinterface org.eclipse.core.resources.IWorkspace.getRoot:()Lorg/eclipse/core/resources/IWorkspaceRoot;
aload 10
invokeinterface org.eclipse.core.resources.IWorkspaceRoot.getProject:(Ljava/lang/String;)Lorg/eclipse/core/resources/IProject;
astore 11
start local 11 17: aload 11
invokestatic org.eclipse.jdt.core.JavaCore.create:(Lorg/eclipse/core/resources/IProject;)Lorg/eclipse/jdt/core/IJavaProject;
astore 12
start local 12 18: aload 2
aload 12
invokeinterface java.util.Set.contains:(Ljava/lang/Object;)Z
ifne 20
19: aload 4
aload 12
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
end local 12 end local 11 end local 10 end local 9 end local 8 end local 7 20: StackMap locals: org.eclipse.jdt.internal.launching.JavaLaunchableTester org.eclipse.jdt.core.IJavaProject java.util.Set java.lang.Object[] java.util.List org.eclipse.jdt.core.IClasspathEntry[] int
StackMap stack:
iinc 6 1
StackMap locals:
StackMap stack:
21: iload 6
aload 5
arraylength
if_icmplt 5
end local 6 end local 5 22: StackMap locals:
StackMap stack:
aload 4
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
astore 5
start local 5 23: goto 28
24: StackMap locals: java.util.Iterator
StackMap stack:
aload 5
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast org.eclipse.jdt.core.IJavaProject
astore 6
start local 6 25: aload 2
aload 6
invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
pop
26: aload 0
aload 6
aload 2
aload 3
invokevirtual org.eclipse.jdt.internal.launching.JavaLaunchableTester.hasItemsOnBuildPath:(Lorg/eclipse/jdt/core/IJavaProject;Ljava/util/Set;[Ljava/lang/Object;)Z
ifeq 28
27: iconst_1
ireturn
end local 6 28: StackMap locals:
StackMap stack:
aload 5
invokeinterface java.util.Iterator.hasNext:()Z
ifne 24
end local 5 end local 4 29: goto 31
StackMap locals: org.eclipse.jdt.internal.launching.JavaLaunchableTester org.eclipse.jdt.core.IJavaProject java.util.Set java.lang.Object[]
StackMap stack: org.eclipse.jdt.core.JavaModelException
30: pop
31: StackMap locals:
StackMap stack:
iconst_0
ireturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 32 0 this Lorg/eclipse/jdt/internal/launching/JavaLaunchableTester;
0 32 1 project Lorg/eclipse/jdt/core/IJavaProject;
0 32 2 searched Ljava/util/Set<Lorg/eclipse/jdt/core/IJavaProject;>;
0 32 3 args [Ljava/lang/Object;
1 29 4 projects Ljava/util/List<Lorg/eclipse/jdt/core/IJavaProject;>;
3 22 5 entries [Lorg/eclipse/jdt/core/IClasspathEntry;
4 22 6 i I
6 20 7 entry Lorg/eclipse/jdt/core/IClasspathEntry;
7 20 8 path Lorg/eclipse/core/runtime/IPath;
8 20 9 spath Ljava/lang/String;
9 14 10 j I
16 20 10 name Ljava/lang/String;
17 20 11 dep Lorg/eclipse/core/resources/IProject;
18 20 12 javaProject Lorg/eclipse/jdt/core/IJavaProject;
23 29 5 iterator Ljava/util/Iterator<Lorg/eclipse/jdt/core/IJavaProject;>;
25 28 6 jp Lorg/eclipse/jdt/core/IJavaProject;
Exception table:
from to target type
0 11 30 Class org.eclipse.jdt.core.JavaModelException
12 27 30 Class org.eclipse.jdt.core.JavaModelException
28 29 30 Class org.eclipse.jdt.core.JavaModelException
Signature: (Lorg/eclipse/jdt/core/IJavaProject;Ljava/util/Set<Lorg/eclipse/jdt/core/IJavaProject;>;[Ljava/lang/Object;)Z
MethodParameters:
Name Flags
project
searched
args
private boolean implementsInterface(org.eclipse.jdt.core.IJavaElement, java.lang.String);
descriptor: (Lorg/eclipse/jdt/core/IJavaElement;Ljava/lang/String;)Z
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=6, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 1
invokevirtual org.eclipse.jdt.internal.launching.JavaLaunchableTester.getType:(Lorg/eclipse/jdt/core/IJavaElement;)Lorg/eclipse/jdt/core/IType;
astore 3
start local 3 1: aload 3
ifnull 11
2: aload 3
new org.eclipse.core.runtime.NullProgressMonitor
dup
invokespecial org.eclipse.core.runtime.NullProgressMonitor.<init>:()V
invokeinterface org.eclipse.jdt.core.IType.newSupertypeHierarchy:(Lorg/eclipse/core/runtime/IProgressMonitor;)Lorg/eclipse/jdt/core/ITypeHierarchy;
invokeinterface org.eclipse.jdt.core.ITypeHierarchy.getAllInterfaces:()[Lorg/eclipse/jdt/core/IType;
astore 4
start local 4 3: iconst_0
istore 5
start local 5 4: goto 8
5: StackMap locals: org.eclipse.jdt.core.IType org.eclipse.jdt.core.IType[] int
StackMap stack:
aload 4
iload 5
aaload
invokeinterface org.eclipse.jdt.core.IType.getFullyQualifiedName:()Ljava/lang/String;
aload 2
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 7
6: iconst_1
ireturn
7: StackMap locals:
StackMap stack:
iinc 5 1
StackMap locals:
StackMap stack:
8: iload 5
aload 4
arraylength
if_icmplt 5
end local 5 end local 4 end local 3 9: goto 11
10: StackMap locals: org.eclipse.jdt.internal.launching.JavaLaunchableTester org.eclipse.jdt.core.IJavaElement java.lang.String
StackMap stack: org.eclipse.jdt.core.JavaModelException
pop
11: StackMap locals:
StackMap stack:
iconst_0
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 12 0 this Lorg/eclipse/jdt/internal/launching/JavaLaunchableTester;
0 12 1 element Lorg/eclipse/jdt/core/IJavaElement;
0 12 2 qname Ljava/lang/String;
1 9 3 type Lorg/eclipse/jdt/core/IType;
3 9 4 itypes [Lorg/eclipse/jdt/core/IType;
4 9 5 i I
Exception table:
from to target type
0 6 10 Class org.eclipse.jdt.core.JavaModelException
7 9 10 Class org.eclipse.jdt.core.JavaModelException
MethodParameters:
Name Flags
element
qname
public boolean test(java.lang.Object, java.lang.String, java.lang.Object[], java.lang.Object);
descriptor: (Ljava/lang/Object;Ljava/lang/String;[Ljava/lang/Object;Ljava/lang/Object;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=6, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: ldc "isContainer"
aload 2
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 6
1: aload 1
instanceof org.eclipse.core.runtime.IAdaptable
ifeq 5
2: aload 1
checkcast org.eclipse.core.runtime.IAdaptable
ldc Lorg/eclipse/core/resources/IResource;
invokeinterface org.eclipse.core.runtime.IAdaptable.getAdapter:(Ljava/lang/Class;)Ljava/lang/Object;
checkcast org.eclipse.core.resources.IResource
astore 5
start local 5 3: aload 5
ifnull 5
4: aload 5
instanceof org.eclipse.core.resources.IContainer
ireturn
end local 5 5: StackMap locals:
StackMap stack:
iconst_0
ireturn
6: StackMap locals:
StackMap stack:
aconst_null
astore 5
start local 5 7: aload 1
instanceof org.eclipse.core.runtime.IAdaptable
ifeq 12
8: aload 1
checkcast org.eclipse.core.runtime.IAdaptable
ldc Lorg/eclipse/jdt/core/IJavaElement;
invokeinterface org.eclipse.core.runtime.IAdaptable.getAdapter:(Ljava/lang/Class;)Ljava/lang/Object;
checkcast org.eclipse.jdt.core.IJavaElement
astore 5
9: aload 5
ifnull 12
10: aload 5
invokeinterface org.eclipse.jdt.core.IJavaElement.exists:()Z
ifne 12
11: iconst_0
ireturn
12: StackMap locals: org.eclipse.jdt.core.IJavaElement
StackMap stack:
ldc "hasMain"
aload 2
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 14
13: aload 0
aload 5
invokevirtual org.eclipse.jdt.internal.launching.JavaLaunchableTester.hasMain:(Lorg/eclipse/jdt/core/IJavaElement;)Z
ireturn
14: StackMap locals:
StackMap stack:
ldc "hasMethod"
aload 2
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 16
15: aload 0
aload 5
aload 3
invokevirtual org.eclipse.jdt.internal.launching.JavaLaunchableTester.hasMethod:(Lorg/eclipse/jdt/core/IJavaElement;[Ljava/lang/Object;)Z
ireturn
16: StackMap locals:
StackMap stack:
ldc "hasMethodWithAnnotation"
aload 2
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 18
17: aload 0
aload 5
aload 3
invokevirtual org.eclipse.jdt.internal.launching.JavaLaunchableTester.hasMethodWithAnnotation:(Lorg/eclipse/jdt/core/IJavaElement;[Ljava/lang/Object;)Z
ireturn
18: StackMap locals:
StackMap stack:
ldc "hasTypeWithAnnotation"
aload 2
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 20
19: aload 0
aload 5
aload 3
iconst_0
aaload
checkcast java.lang.String
invokevirtual org.eclipse.jdt.internal.launching.JavaLaunchableTester.hasTypeWithAnnotation:(Lorg/eclipse/jdt/core/IJavaElement;Ljava/lang/String;)Z
ireturn
20: StackMap locals:
StackMap stack:
ldc "buildpathReference"
aload 2
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 22
21: aload 0
aload 5
aload 3
invokevirtual org.eclipse.jdt.internal.launching.JavaLaunchableTester.hasItemOnBuildPath:(Lorg/eclipse/jdt/core/IJavaElement;[Ljava/lang/Object;)Z
ireturn
22: StackMap locals:
StackMap stack:
ldc "extendsClass"
aload 2
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 24
23: aload 0
aload 5
aload 3
iconst_0
aaload
checkcast java.lang.String
invokevirtual org.eclipse.jdt.internal.launching.JavaLaunchableTester.hasSuperclass:(Lorg/eclipse/jdt/core/IJavaElement;Ljava/lang/String;)Z
ireturn
24: StackMap locals:
StackMap stack:
ldc "hasProjectNature"
aload 2
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 26
25: aload 0
aload 5
aload 3
iconst_0
aaload
checkcast java.lang.String
invokevirtual org.eclipse.jdt.internal.launching.JavaLaunchableTester.hasProjectNature:(Lorg/eclipse/jdt/core/IJavaElement;Ljava/lang/String;)Z
ireturn
26: StackMap locals:
StackMap stack:
ldc "extendsInterface"
aload 2
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 28
27: aload 0
aload 5
aload 3
iconst_0
aaload
checkcast java.lang.String
invokevirtual org.eclipse.jdt.internal.launching.JavaLaunchableTester.implementsInterface:(Lorg/eclipse/jdt/core/IJavaElement;Ljava/lang/String;)Z
ireturn
28: StackMap locals:
StackMap stack:
ldc "isPackageFragment"
aload 2
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 30
29: aload 5
instanceof org.eclipse.jdt.core.IPackageFragment
ireturn
30: StackMap locals:
StackMap stack:
ldc "isPackageFragmentRoot"
aload 2
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 32
31: aload 5
instanceof org.eclipse.jdt.core.IPackageFragmentRoot
ireturn
32: StackMap locals:
StackMap stack:
iconst_0
ireturn
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 33 0 this Lorg/eclipse/jdt/internal/launching/JavaLaunchableTester;
0 33 1 receiver Ljava/lang/Object;
0 33 2 property Ljava/lang/String;
0 33 3 args [Ljava/lang/Object;
0 33 4 expectedValue Ljava/lang/Object;
3 5 5 resource Lorg/eclipse/core/resources/IResource;
7 33 5 element Lorg/eclipse/jdt/core/IJavaElement;
MethodParameters:
Name Flags
receiver
property
args
expectedValue
}
SourceFile: "JavaLaunchableTester.java"