abstract class com.oracle.truffle.api.source.SourceImpl$Key
minor version: 0
major version: 59
flags: flags: (0x0420) ACC_SUPER, ACC_ABSTRACT
this_class: com.oracle.truffle.api.source.SourceImpl$Key
super_class: java.lang.Object
{
final java.lang.Object content;
descriptor: Ljava/lang/Object;
flags: (0x0010) ACC_FINAL
final java.lang.String name;
descriptor: Ljava/lang/String;
flags: (0x0010) ACC_FINAL
final java.lang.String mimeType;
descriptor: Ljava/lang/String;
flags: (0x0010) ACC_FINAL
final java.lang.String language;
descriptor: Ljava/lang/String;
flags: (0x0010) ACC_FINAL
final boolean internal;
descriptor: Z
flags: (0x0010) ACC_FINAL
final boolean interactive;
descriptor: Z
flags: (0x0010) ACC_FINAL
final boolean cached;
descriptor: Z
flags: (0x0010) ACC_FINAL
volatile java.lang.Integer cachedHashCode;
descriptor: Ljava/lang/Integer;
flags: (0x0040) ACC_VOLATILE
static final boolean $assertionsDisabled;
descriptor: Z
flags: (0x1018) ACC_STATIC, ACC_FINAL, ACC_SYNTHETIC
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=1, locals=0, args_size=0
0: ldc Lcom/oracle/truffle/api/source/SourceImpl;
invokevirtual java.lang.Class.desiredAssertionStatus:()Z
ifne 1
iconst_1
goto 2
StackMap locals:
StackMap stack:
1: iconst_0
StackMap locals:
StackMap stack: int
2: putstatic com.oracle.truffle.api.source.SourceImpl$Key.$assertionsDisabled:Z
return
LocalVariableTable:
Start End Slot Name Signature
void <init>(java.lang.Object, java.lang.String, java.lang.String, java.lang.String, boolean, boolean, boolean);
descriptor: (Ljava/lang/Object;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;ZZZ)V
flags: (0x0000)
Code:
stack=2, locals=8, args_size=8
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 start local 6 start local 7 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
aload 1
putfield com.oracle.truffle.api.source.SourceImpl$Key.content:Ljava/lang/Object;
2: aload 0
aload 2
putfield com.oracle.truffle.api.source.SourceImpl$Key.mimeType:Ljava/lang/String;
3: aload 0
aload 3
putfield com.oracle.truffle.api.source.SourceImpl$Key.language:Ljava/lang/String;
4: aload 0
aload 4
putfield com.oracle.truffle.api.source.SourceImpl$Key.name:Ljava/lang/String;
5: aload 0
iload 5
putfield com.oracle.truffle.api.source.SourceImpl$Key.internal:Z
6: aload 0
iload 6
putfield com.oracle.truffle.api.source.SourceImpl$Key.interactive:Z
7: aload 0
iload 7
putfield com.oracle.truffle.api.source.SourceImpl$Key.cached:Z
8: return
end local 7 end local 6 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 9 0 this Lcom/oracle/truffle/api/source/SourceImpl$Key;
0 9 1 content Ljava/lang/Object;
0 9 2 mimeType Ljava/lang/String;
0 9 3 languageId Ljava/lang/String;
0 9 4 name Ljava/lang/String;
0 9 5 internal Z
0 9 6 interactive Z
0 9 7 cached Z
MethodParameters:
Name Flags
content
mimeType
languageId
name
internal
interactive
cached
abstract java.lang.String getPath();
descriptor: ()Ljava/lang/String;
flags: (0x0400) ACC_ABSTRACT
abstract java.net.URI getURI();
descriptor: ()Ljava/net/URI;
flags: (0x0400) ACC_ABSTRACT
abstract java.net.URL getURL();
descriptor: ()Ljava/net/URL;
flags: (0x0400) ACC_ABSTRACT
public int hashCode();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=10, locals=2, args_size=1
start local 0 0: aload 0
getfield com.oracle.truffle.api.source.SourceImpl$Key.cachedHashCode:Ljava/lang/Integer;
astore 1
start local 1 1: aload 1
ifnonnull 4
2: aload 0
getfield com.oracle.truffle.api.source.SourceImpl$Key.content:Ljava/lang/Object;
aload 0
getfield com.oracle.truffle.api.source.SourceImpl$Key.mimeType:Ljava/lang/String;
aload 0
getfield com.oracle.truffle.api.source.SourceImpl$Key.language:Ljava/lang/String;
aload 0
invokevirtual com.oracle.truffle.api.source.SourceImpl$Key.getURL:()Ljava/net/URL;
aload 0
invokevirtual com.oracle.truffle.api.source.SourceImpl$Key.getURI:()Ljava/net/URI;
aload 0
getfield com.oracle.truffle.api.source.SourceImpl$Key.name:Ljava/lang/String;
aload 0
invokevirtual com.oracle.truffle.api.source.SourceImpl$Key.getPath:()Ljava/lang/String;
aload 0
getfield com.oracle.truffle.api.source.SourceImpl$Key.internal:Z
aload 0
getfield com.oracle.truffle.api.source.SourceImpl$Key.interactive:Z
aload 0
getfield com.oracle.truffle.api.source.SourceImpl$Key.cached:Z
invokestatic com.oracle.truffle.api.source.SourceImpl$Key.hashCodeImpl:(Ljava/lang/Object;Ljava/lang/String;Ljava/lang/String;Ljava/net/URL;Ljava/net/URI;Ljava/lang/String;Ljava/lang/String;ZZZ)I
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
astore 1
3: aload 0
aload 1
putfield com.oracle.truffle.api.source.SourceImpl$Key.cachedHashCode:Ljava/lang/Integer;
4: StackMap locals: java.lang.Integer
StackMap stack:
aload 1
invokevirtual java.lang.Integer.intValue:()I
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lcom/oracle/truffle/api/source/SourceImpl$Key;
1 5 1 hashCode Ljava/lang/Integer;
static int hashCodeImpl(java.lang.Object, java.lang.String, java.lang.String, java.net.URL, java.net.URI, java.lang.String, java.lang.String, boolean, boolean, boolean);
descriptor: (Ljava/lang/Object;Ljava/lang/String;Ljava/lang/String;Ljava/net/URL;Ljava/net/URI;Ljava/lang/String;Ljava/lang/String;ZZZ)I
flags: (0x0008) ACC_STATIC
Code:
stack=2, locals=11, args_size=10
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 start local 6 start local 7 start local 8 start local 9 0: bipush 31
aload 0
ifnonnull 1
iconst_0
goto 2
StackMap locals:
StackMap stack: int
1: aload 0
invokevirtual java.lang.Object.hashCode:()I
StackMap locals: java.lang.Object java.lang.String java.lang.String java.net.URL java.net.URI java.lang.String java.lang.String int int int
StackMap stack: int int
2: iadd
istore 10
start local 10 3: bipush 31
iload 10
imul
iload 8
ifeq 4
sipush 1231
goto 5
StackMap locals: java.lang.Object java.lang.String java.lang.String java.net.URL java.net.URI java.lang.String java.lang.String int int int int
StackMap stack: int
4: sipush 1237
StackMap locals: java.lang.Object java.lang.String java.lang.String java.net.URL java.net.URI java.lang.String java.lang.String int int int int
StackMap stack: int int
5: iadd
istore 10
6: bipush 31
iload 10
imul
iload 7
ifeq 7
sipush 1231
goto 8
StackMap locals:
StackMap stack: int
7: sipush 1237
StackMap locals: java.lang.Object java.lang.String java.lang.String java.net.URL java.net.URI java.lang.String java.lang.String int int int int
StackMap stack: int int
8: iadd
istore 10
9: bipush 31
iload 10
imul
iload 9
ifeq 10
sipush 1231
goto 11
StackMap locals:
StackMap stack: int
10: sipush 1237
StackMap locals: java.lang.Object java.lang.String java.lang.String java.net.URL java.net.URI java.lang.String java.lang.String int int int int
StackMap stack: int int
11: iadd
istore 10
12: bipush 31
iload 10
imul
aload 2
ifnonnull 13
iconst_0
goto 14
StackMap locals:
StackMap stack: int
13: aload 2
invokevirtual java.lang.String.hashCode:()I
StackMap locals: java.lang.Object java.lang.String java.lang.String java.net.URL java.net.URI java.lang.String java.lang.String int int int int
StackMap stack: int int
14: iadd
istore 10
15: bipush 31
iload 10
imul
aload 1
ifnonnull 16
iconst_0
goto 17
StackMap locals:
StackMap stack: int
16: aload 1
invokevirtual java.lang.String.hashCode:()I
StackMap locals: java.lang.Object java.lang.String java.lang.String java.net.URL java.net.URI java.lang.String java.lang.String int int int int
StackMap stack: int int
17: iadd
istore 10
18: bipush 31
iload 10
imul
aload 5
ifnonnull 19
iconst_0
goto 20
StackMap locals:
StackMap stack: int
19: aload 5
invokevirtual java.lang.String.hashCode:()I
StackMap locals: java.lang.Object java.lang.String java.lang.String java.net.URL java.net.URI java.lang.String java.lang.String int int int int
StackMap stack: int int
20: iadd
istore 10
21: bipush 31
iload 10
imul
aload 6
ifnonnull 22
iconst_0
goto 23
StackMap locals:
StackMap stack: int
22: aload 6
invokevirtual java.lang.String.hashCode:()I
StackMap locals: java.lang.Object java.lang.String java.lang.String java.net.URL java.net.URI java.lang.String java.lang.String int int int int
StackMap stack: int int
23: iadd
istore 10
24: bipush 31
iload 10
imul
aload 4
ifnonnull 25
iconst_0
goto 26
StackMap locals:
StackMap stack: int
25: aload 4
invokevirtual java.net.URI.hashCode:()I
StackMap locals: java.lang.Object java.lang.String java.lang.String java.net.URL java.net.URI java.lang.String java.lang.String int int int int
StackMap stack: int int
26: iadd
istore 10
27: bipush 31
iload 10
imul
aload 3
ifnonnull 28
iconst_0
goto 29
StackMap locals:
StackMap stack: int
28: aload 3
invokevirtual java.net.URL.hashCode:()I
StackMap locals: java.lang.Object java.lang.String java.lang.String java.net.URL java.net.URI java.lang.String java.lang.String int int int int
StackMap stack: int int
29: iadd
istore 10
30: iload 10
ireturn
end local 10 end local 9 end local 8 end local 7 end local 6 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 31 0 content Ljava/lang/Object;
0 31 1 mimeType Ljava/lang/String;
0 31 2 language Ljava/lang/String;
0 31 3 url Ljava/net/URL;
0 31 4 uri Ljava/net/URI;
0 31 5 name Ljava/lang/String;
0 31 6 path Ljava/lang/String;
0 31 7 internal Z
0 31 8 interactive Z
0 31 9 cached Z
3 31 10 result I
MethodParameters:
Name Flags
content
mimeType
language
url
uri
name
path
internal
interactive
cached
public boolean equals(java.lang.Object);
descriptor: (Ljava/lang/Object;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=3, args_size=2
start local 0 start local 1 0: aload 0
aload 1
if_acmpne 2
1: iconst_1
ireturn
2: StackMap locals:
StackMap stack:
aload 1
instanceof com.oracle.truffle.api.source.SourceImpl$Key
ifne 4
3: iconst_0
ireturn
4: StackMap locals:
StackMap stack:
aload 1
checkcast com.oracle.truffle.api.source.SourceImpl$Key
astore 2
start local 2 5: aload 0
getfield com.oracle.truffle.api.source.SourceImpl$Key.language:Ljava/lang/String;
aload 2
getfield com.oracle.truffle.api.source.SourceImpl$Key.language:Ljava/lang/String;
invokestatic java.util.Objects.equals:(Ljava/lang/Object;Ljava/lang/Object;)Z
ifeq 16
6: aload 0
getfield com.oracle.truffle.api.source.SourceImpl$Key.mimeType:Ljava/lang/String;
aload 2
getfield com.oracle.truffle.api.source.SourceImpl$Key.mimeType:Ljava/lang/String;
invokestatic java.util.Objects.equals:(Ljava/lang/Object;Ljava/lang/Object;)Z
ifeq 16
7: aload 0
getfield com.oracle.truffle.api.source.SourceImpl$Key.name:Ljava/lang/String;
aload 2
getfield com.oracle.truffle.api.source.SourceImpl$Key.name:Ljava/lang/String;
invokestatic java.util.Objects.equals:(Ljava/lang/Object;Ljava/lang/Object;)Z
ifeq 16
8: aload 0
invokevirtual com.oracle.truffle.api.source.SourceImpl$Key.getPath:()Ljava/lang/String;
aload 2
invokevirtual com.oracle.truffle.api.source.SourceImpl$Key.getPath:()Ljava/lang/String;
invokestatic java.util.Objects.equals:(Ljava/lang/Object;Ljava/lang/Object;)Z
ifeq 16
9: aload 0
invokevirtual com.oracle.truffle.api.source.SourceImpl$Key.getURI:()Ljava/net/URI;
aload 2
invokevirtual com.oracle.truffle.api.source.SourceImpl$Key.getURI:()Ljava/net/URI;
invokestatic java.util.Objects.equals:(Ljava/lang/Object;Ljava/lang/Object;)Z
ifeq 16
10: aload 0
invokevirtual com.oracle.truffle.api.source.SourceImpl$Key.getURL:()Ljava/net/URL;
aload 2
invokevirtual com.oracle.truffle.api.source.SourceImpl$Key.getURL:()Ljava/net/URL;
invokestatic java.util.Objects.equals:(Ljava/lang/Object;Ljava/lang/Object;)Z
ifeq 16
11: aload 0
getfield com.oracle.truffle.api.source.SourceImpl$Key.interactive:Z
aload 2
getfield com.oracle.truffle.api.source.SourceImpl$Key.interactive:Z
if_icmpne 16
12: aload 0
getfield com.oracle.truffle.api.source.SourceImpl$Key.internal:Z
aload 2
getfield com.oracle.truffle.api.source.SourceImpl$Key.internal:Z
if_icmpne 16
13: aload 0
getfield com.oracle.truffle.api.source.SourceImpl$Key.cached:Z
aload 2
getfield com.oracle.truffle.api.source.SourceImpl$Key.cached:Z
if_icmpne 16
14: aload 0
aload 2
invokevirtual com.oracle.truffle.api.source.SourceImpl$Key.compareContent:(Lcom/oracle/truffle/api/source/SourceImpl$Key;)Z
ifeq 16
15: iconst_1
ireturn
StackMap locals: com.oracle.truffle.api.source.SourceImpl$Key
StackMap stack:
16: iconst_0
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 17 0 this Lcom/oracle/truffle/api/source/SourceImpl$Key;
0 17 1 obj Ljava/lang/Object;
5 17 2 other Lcom/oracle/truffle/api/source/SourceImpl$Key;
MethodParameters:
Name Flags
obj
void invalidateAfterPreinitialiation();
descriptor: ()V
flags: (0x0000)
Code:
stack=0, locals=1, args_size=1
start local 0 0: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/truffle/api/source/SourceImpl$Key;
private boolean compareContent(com.oracle.truffle.api.source.SourceImpl$Key);
descriptor: (Lcom/oracle/truffle/api/source/SourceImpl$Key;)Z
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=3, args_size=2
start local 0 start local 1 0: aload 1
getfield com.oracle.truffle.api.source.SourceImpl$Key.content:Ljava/lang/Object;
astore 2
start local 2 1: aload 0
getfield com.oracle.truffle.api.source.SourceImpl$Key.content:Ljava/lang/Object;
aload 1
getfield com.oracle.truffle.api.source.SourceImpl$Key.content:Ljava/lang/Object;
if_acmpne 3
2: iconst_1
ireturn
3: StackMap locals: java.lang.Object
StackMap stack:
aload 0
getfield com.oracle.truffle.api.source.SourceImpl$Key.content:Ljava/lang/Object;
instanceof java.lang.CharSequence
ifeq 5
aload 2
instanceof java.lang.CharSequence
ifeq 5
4: aload 0
getfield com.oracle.truffle.api.source.SourceImpl$Key.content:Ljava/lang/Object;
checkcast java.lang.CharSequence
aload 2
checkcast java.lang.CharSequence
invokestatic com.oracle.truffle.api.source.SourceImpl$Key.compareCharacters:(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Z
ireturn
5: StackMap locals:
StackMap stack:
aload 0
getfield com.oracle.truffle.api.source.SourceImpl$Key.content:Ljava/lang/Object;
instanceof org.graalvm.polyglot.io.ByteSequence
ifeq 7
aload 2
instanceof org.graalvm.polyglot.io.ByteSequence
ifeq 7
6: aload 0
getfield com.oracle.truffle.api.source.SourceImpl$Key.content:Ljava/lang/Object;
checkcast org.graalvm.polyglot.io.ByteSequence
aload 2
checkcast org.graalvm.polyglot.io.ByteSequence
invokestatic com.oracle.truffle.api.source.SourceImpl$Key.compareBytes:(Lorg/graalvm/polyglot/io/ByteSequence;Lorg/graalvm/polyglot/io/ByteSequence;)Z
ireturn
7: StackMap locals:
StackMap stack:
iconst_0
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lcom/oracle/truffle/api/source/SourceImpl$Key;
0 8 1 other Lcom/oracle/truffle/api/source/SourceImpl$Key;
1 8 2 otherContent Ljava/lang/Object;
MethodParameters:
Name Flags
other
private static boolean compareBytes(org.graalvm.polyglot.io.ByteSequence, org.graalvm.polyglot.io.ByteSequence);
descriptor: (Lorg/graalvm/polyglot/io/ByteSequence;Lorg/graalvm/polyglot/io/ByteSequence;)Z
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
ifnull 1
aload 0
invokeinterface org.graalvm.polyglot.io.ByteSequence.length:()I
aload 1
invokeinterface org.graalvm.polyglot.io.ByteSequence.length:()I
if_icmpeq 2
1: StackMap locals:
StackMap stack:
iconst_0
ireturn
2: StackMap locals:
StackMap stack:
aload 0
aload 1
invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 bytes Lorg/graalvm/polyglot/io/ByteSequence;
0 3 1 other Lorg/graalvm/polyglot/io/ByteSequence;
MethodParameters:
Name Flags
bytes
other
private static boolean compareCharacters(java.lang.CharSequence, java.lang.CharSequence);
descriptor: (Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Z
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
ifnull 1
aload 0
invokeinterface java.lang.CharSequence.length:()I
aload 1
invokeinterface java.lang.CharSequence.length:()I
if_icmpeq 2
1: StackMap locals:
StackMap stack:
iconst_0
ireturn
2: StackMap locals:
StackMap stack:
aload 0
invokeinterface java.lang.CharSequence.toString:()Ljava/lang/String;
aload 1
invokeinterface java.lang.CharSequence.toString:()Ljava/lang/String;
invokestatic java.util.Objects.equals:(Ljava/lang/Object;Ljava/lang/Object;)Z
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 characters Ljava/lang/CharSequence;
0 3 1 other Ljava/lang/CharSequence;
MethodParameters:
Name Flags
characters
other
com.oracle.truffle.api.source.SourceImpl toSourceInterned();
descriptor: ()Lcom/oracle/truffle/api/source/SourceImpl;
flags: (0x0000)
Code:
stack=3, locals=1, args_size=1
start local 0 0: getstatic com.oracle.truffle.api.source.SourceImpl$Key.$assertionsDisabled:Z
ifne 1
aload 0
getfield com.oracle.truffle.api.source.SourceImpl$Key.cached:Z
ifne 1
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
1: StackMap locals:
StackMap stack:
new com.oracle.truffle.api.source.SourceImpl
dup
aload 0
invokespecial com.oracle.truffle.api.source.SourceImpl.<init>:(Lcom/oracle/truffle/api/source/SourceImpl$Key;)V
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/oracle/truffle/api/source/SourceImpl$Key;
com.oracle.truffle.api.source.SourceImpl toSourceNotInterned();
descriptor: ()Lcom/oracle/truffle/api/source/SourceImpl;
flags: (0x0000)
Code:
stack=4, locals=1, args_size=1
start local 0 0: getstatic com.oracle.truffle.api.source.SourceImpl$Key.$assertionsDisabled:Z
ifne 1
aload 0
getfield com.oracle.truffle.api.source.SourceImpl$Key.cached:Z
ifeq 1
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
1: StackMap locals:
StackMap stack:
new com.oracle.truffle.api.source.SourceImpl
dup
aload 0
aload 0
invokespecial com.oracle.truffle.api.source.SourceImpl.<init>:(Lcom/oracle/truffle/api/source/SourceImpl$Key;Ljava/lang/Object;)V
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/oracle/truffle/api/source/SourceImpl$Key;
}
SourceFile: "SourceImpl.java"
NestHost: com.oracle.truffle.api.source.SourceImpl
InnerClasses:
abstract Key = com.oracle.truffle.api.source.SourceImpl$Key of com.oracle.truffle.api.source.SourceImpl