public class jdk.internal.util.Preconditions
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: jdk.internal.util.Preconditions
super_class: java.lang.Object
{
public void <init>();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokespecial java.lang.Object.<init>:()V
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljdk/internal/util/Preconditions;
private static java.lang.RuntimeException outOfBounds(java.util.function.BiFunction<java.lang.String, java.util.List<java.lang.Integer>, ? extends java.lang.RuntimeException>, java.lang.String, java.lang.Integer[]);
descriptor: (Ljava/util/function/BiFunction;Ljava/lang/String;[Ljava/lang/Integer;)Ljava/lang/RuntimeException;
flags: (0x008a) ACC_PRIVATE, ACC_STATIC, ACC_VARARGS
Code:
stack=4, locals=5, args_size=3
start local 0 start local 1 start local 2 0: aload 2
invokestatic java.util.List.of:([Ljava/lang/Object;)Ljava/util/List;
astore 3
start local 3 1: aload 0
ifnonnull 3
2: aconst_null
goto 4
StackMap locals: java.util.List
StackMap stack:
3: aload 0
aload 1
aload 3
invokeinterface java.util.function.BiFunction.apply:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.lang.RuntimeException
4: StackMap locals:
StackMap stack: java.lang.RuntimeException
astore 4
start local 4 5: aload 4
ifnonnull 7
6: new java.lang.IndexOutOfBoundsException
dup
aload 1
aload 3
invokestatic jdk.internal.util.Preconditions.outOfBoundsMessage:(Ljava/lang/String;Ljava/util/List;)Ljava/lang/String;
invokespecial java.lang.IndexOutOfBoundsException.<init>:(Ljava/lang/String;)V
goto 8
StackMap locals: java.lang.RuntimeException
StackMap stack:
7: aload 4
8: StackMap locals:
StackMap stack: java.lang.RuntimeException
areturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 oobef Ljava/util/function/BiFunction<Ljava/lang/String;Ljava/util/List<Ljava/lang/Integer;>;+Ljava/lang/RuntimeException;>;
0 9 1 checkKind Ljava/lang/String;
0 9 2 args [Ljava/lang/Integer;
1 9 3 largs Ljava/util/List<Ljava/lang/Integer;>;
5 9 4 e Ljava/lang/RuntimeException;
Signature: (Ljava/util/function/BiFunction<Ljava/lang/String;Ljava/util/List<Ljava/lang/Integer;>;+Ljava/lang/RuntimeException;>;Ljava/lang/String;[Ljava/lang/Integer;)Ljava/lang/RuntimeException;
MethodParameters:
Name Flags
oobef
checkKind
args
private static java.lang.RuntimeException outOfBoundsCheckIndex(java.util.function.BiFunction<java.lang.String, java.util.List<java.lang.Integer>, ? extends java.lang.RuntimeException>, int, int);
descriptor: (Ljava/util/function/BiFunction;II)Ljava/lang/RuntimeException;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=6, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
ldc "checkIndex"
iconst_2
anewarray java.lang.Integer
dup
iconst_0
iload 1
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
aastore
dup
iconst_1
iload 2
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
aastore
invokestatic jdk.internal.util.Preconditions.outOfBounds:(Ljava/util/function/BiFunction;Ljava/lang/String;[Ljava/lang/Integer;)Ljava/lang/RuntimeException;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 oobe Ljava/util/function/BiFunction<Ljava/lang/String;Ljava/util/List<Ljava/lang/Integer;>;+Ljava/lang/RuntimeException;>;
0 1 1 index I
0 1 2 length I
Signature: (Ljava/util/function/BiFunction<Ljava/lang/String;Ljava/util/List<Ljava/lang/Integer;>;+Ljava/lang/RuntimeException;>;II)Ljava/lang/RuntimeException;
MethodParameters:
Name Flags
oobe
index
length
private static java.lang.RuntimeException outOfBoundsCheckFromToIndex(java.util.function.BiFunction<java.lang.String, java.util.List<java.lang.Integer>, ? extends java.lang.RuntimeException>, int, int, int);
descriptor: (Ljava/util/function/BiFunction;III)Ljava/lang/RuntimeException;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=6, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
ldc "checkFromToIndex"
iconst_3
anewarray java.lang.Integer
dup
iconst_0
iload 1
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
aastore
dup
iconst_1
iload 2
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
aastore
dup
iconst_2
iload 3
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
aastore
invokestatic jdk.internal.util.Preconditions.outOfBounds:(Ljava/util/function/BiFunction;Ljava/lang/String;[Ljava/lang/Integer;)Ljava/lang/RuntimeException;
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 oobe Ljava/util/function/BiFunction<Ljava/lang/String;Ljava/util/List<Ljava/lang/Integer;>;+Ljava/lang/RuntimeException;>;
0 1 1 fromIndex I
0 1 2 toIndex I
0 1 3 length I
Signature: (Ljava/util/function/BiFunction<Ljava/lang/String;Ljava/util/List<Ljava/lang/Integer;>;+Ljava/lang/RuntimeException;>;III)Ljava/lang/RuntimeException;
MethodParameters:
Name Flags
oobe
fromIndex
toIndex
length
private static java.lang.RuntimeException outOfBoundsCheckFromIndexSize(java.util.function.BiFunction<java.lang.String, java.util.List<java.lang.Integer>, ? extends java.lang.RuntimeException>, int, int, int);
descriptor: (Ljava/util/function/BiFunction;III)Ljava/lang/RuntimeException;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=6, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
ldc "checkFromIndexSize"
iconst_3
anewarray java.lang.Integer
dup
iconst_0
iload 1
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
aastore
dup
iconst_1
iload 2
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
aastore
dup
iconst_2
iload 3
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
aastore
invokestatic jdk.internal.util.Preconditions.outOfBounds:(Ljava/util/function/BiFunction;Ljava/lang/String;[Ljava/lang/Integer;)Ljava/lang/RuntimeException;
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 oobe Ljava/util/function/BiFunction<Ljava/lang/String;Ljava/util/List<Ljava/lang/Integer;>;+Ljava/lang/RuntimeException;>;
0 1 1 fromIndex I
0 1 2 size I
0 1 3 length I
Signature: (Ljava/util/function/BiFunction<Ljava/lang/String;Ljava/util/List<Ljava/lang/Integer;>;+Ljava/lang/RuntimeException;>;III)Ljava/lang/RuntimeException;
MethodParameters:
Name Flags
oobe
fromIndex
size
length
public static <X extends java.lang.RuntimeException> java.util.function.BiFunction<java.lang.String, java.util.List<java.lang.Integer>, X> outOfBoundsExceptionFormatter(java.util.function.Function<java.lang.String, X>);
descriptor: (Ljava/util/function/Function;)Ljava/util/function/BiFunction;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: new jdk.internal.util.Preconditions$1
dup
aload 0
invokespecial jdk.internal.util.Preconditions$1.<init>:(Ljava/util/function/Function;)V
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 f Ljava/util/function/Function<Ljava/lang/String;TX;>;
Signature: <X:Ljava/lang/RuntimeException;>(Ljava/util/function/Function<Ljava/lang/String;TX;>;)Ljava/util/function/BiFunction<Ljava/lang/String;Ljava/util/List<Ljava/lang/Integer;>;TX;>;
MethodParameters:
Name Flags
f
private static java.lang.String outOfBoundsMessage(java.lang.String, java.util.List<java.lang.Integer>);
descriptor: (Ljava/lang/String;Ljava/util/List;)Ljava/lang/String;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=6, locals=5, args_size=2
start local 0 start local 1 0: aload 0
ifnonnull 2
aload 1
ifnonnull 2
1: ldc "Range check failed"
iconst_0
anewarray java.lang.Object
invokestatic java.lang.String.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
areturn
2: StackMap locals:
StackMap stack:
aload 0
ifnonnull 4
3: ldc "Range check failed: %s"
iconst_1
anewarray java.lang.Object
dup
iconst_0
aload 1
aastore
invokestatic java.lang.String.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
areturn
4: StackMap locals:
StackMap stack:
aload 1
ifnonnull 6
5: ldc "Range check failed: %s"
iconst_1
anewarray java.lang.Object
dup
iconst_0
aload 0
aastore
invokestatic java.lang.String.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
areturn
6: StackMap locals:
StackMap stack:
iconst_0
istore 2
start local 2 7: aload 0
dup
astore 3
invokevirtual java.lang.String.hashCode:()I
lookupswitch { // 3
-538822486: 8
1844394469: 9
1848935233: 10
default: 14
}
StackMap locals: int java.lang.String
StackMap stack:
8: aload 3
ldc "checkIndex"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifne 11
goto 14
StackMap locals:
StackMap stack:
9: aload 3
ldc "checkFromToIndex"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifne 13
goto 14
StackMap locals:
StackMap stack:
10: aload 3
ldc "checkFromIndexSize"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifne 13
goto 14
11: StackMap locals:
StackMap stack:
iconst_2
istore 2
12: goto 14
13: StackMap locals:
StackMap stack:
iconst_3
istore 2
14: StackMap locals:
StackMap stack:
aload 1
invokeinterface java.util.List.size:()I
iload 2
if_icmpeq 15
ldc ""
goto 16
StackMap locals:
StackMap stack:
15: aload 0
StackMap locals:
StackMap stack: java.lang.String
16: dup
astore 4
invokevirtual java.lang.String.hashCode:()I
lookupswitch { // 3
-538822486: 17
1844394469: 18
1848935233: 19
default: 29
}
StackMap locals: java.lang.String java.util.List int top java.lang.String
StackMap stack:
17: aload 4
ldc "checkIndex"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifne 20
goto 29
StackMap locals:
StackMap stack:
18: aload 4
ldc "checkFromToIndex"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifne 23
goto 29
StackMap locals:
StackMap stack:
19: aload 4
ldc "checkFromIndexSize"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifne 26
goto 29
20: StackMap locals:
StackMap stack:
ldc "Index %d out of bounds for length %d"
iconst_2
anewarray java.lang.Object
dup
iconst_0
21: aload 1
iconst_0
invokeinterface java.util.List.get:(I)Ljava/lang/Object;
aastore
dup
iconst_1
aload 1
iconst_1
invokeinterface java.util.List.get:(I)Ljava/lang/Object;
aastore
22: invokestatic java.lang.String.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
areturn
23: StackMap locals:
StackMap stack:
ldc "Range [%d, %d) out of bounds for length %d"
iconst_3
anewarray java.lang.Object
dup
iconst_0
24: aload 1
iconst_0
invokeinterface java.util.List.get:(I)Ljava/lang/Object;
aastore
dup
iconst_1
aload 1
iconst_1
invokeinterface java.util.List.get:(I)Ljava/lang/Object;
aastore
dup
iconst_2
aload 1
iconst_2
invokeinterface java.util.List.get:(I)Ljava/lang/Object;
aastore
25: invokestatic java.lang.String.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
areturn
26: StackMap locals:
StackMap stack:
ldc "Range [%d, %<d + %d) out of bounds for length %d"
iconst_3
anewarray java.lang.Object
dup
iconst_0
27: aload 1
iconst_0
invokeinterface java.util.List.get:(I)Ljava/lang/Object;
aastore
dup
iconst_1
aload 1
iconst_1
invokeinterface java.util.List.get:(I)Ljava/lang/Object;
aastore
dup
iconst_2
aload 1
iconst_2
invokeinterface java.util.List.get:(I)Ljava/lang/Object;
aastore
28: invokestatic java.lang.String.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
areturn
29: StackMap locals:
StackMap stack:
ldc "Range check failed: %s %s"
iconst_2
anewarray java.lang.Object
dup
iconst_0
aload 0
aastore
dup
iconst_1
aload 1
aastore
invokestatic java.lang.String.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 30 0 checkKind Ljava/lang/String;
0 30 1 args Ljava/util/List<Ljava/lang/Integer;>;
7 30 2 argSize I
Signature: (Ljava/lang/String;Ljava/util/List<Ljava/lang/Integer;>;)Ljava/lang/String;
MethodParameters:
Name Flags
checkKind
args
public static <X extends java.lang.RuntimeException> int checkIndex(int, int, java.util.function.BiFunction<java.lang.String, java.util.List<java.lang.Integer>, X>);
descriptor: (IILjava/util/function/BiFunction;)I
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=3, args_size=3
start local 0 start local 1 start local 2 0: iload 0
iflt 1
iload 0
iload 1
if_icmplt 2
1: StackMap locals:
StackMap stack:
aload 2
iload 0
iload 1
invokestatic jdk.internal.util.Preconditions.outOfBoundsCheckIndex:(Ljava/util/function/BiFunction;II)Ljava/lang/RuntimeException;
athrow
2: StackMap locals:
StackMap stack:
iload 0
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 index I
0 3 1 length I
0 3 2 oobef Ljava/util/function/BiFunction<Ljava/lang/String;Ljava/util/List<Ljava/lang/Integer;>;TX;>;
Signature: <X:Ljava/lang/RuntimeException;>(IILjava/util/function/BiFunction<Ljava/lang/String;Ljava/util/List<Ljava/lang/Integer;>;TX;>;)I
RuntimeVisibleAnnotations:
jdk.internal.HotSpotIntrinsicCandidate()
MethodParameters:
Name Flags
index
length
oobef
public static <X extends java.lang.RuntimeException> int checkFromToIndex(int, int, int, java.util.function.BiFunction<java.lang.String, java.util.List<java.lang.Integer>, X>);
descriptor: (IIILjava/util/function/BiFunction;)I
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=4, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: iload 0
iflt 1
iload 0
iload 1
if_icmpgt 1
iload 1
iload 2
if_icmple 2
1: StackMap locals:
StackMap stack:
aload 3
iload 0
iload 1
iload 2
invokestatic jdk.internal.util.Preconditions.outOfBoundsCheckFromToIndex:(Ljava/util/function/BiFunction;III)Ljava/lang/RuntimeException;
athrow
2: StackMap locals:
StackMap stack:
iload 0
ireturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 fromIndex I
0 3 1 toIndex I
0 3 2 length I
0 3 3 oobef Ljava/util/function/BiFunction<Ljava/lang/String;Ljava/util/List<Ljava/lang/Integer;>;TX;>;
Signature: <X:Ljava/lang/RuntimeException;>(IIILjava/util/function/BiFunction<Ljava/lang/String;Ljava/util/List<Ljava/lang/Integer;>;TX;>;)I
MethodParameters:
Name Flags
fromIndex
toIndex
length
oobef
public static <X extends java.lang.RuntimeException> int checkFromIndexSize(int, int, int, java.util.function.BiFunction<java.lang.String, java.util.List<java.lang.Integer>, X>);
descriptor: (IIILjava/util/function/BiFunction;)I
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=4, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: iload 2
iload 0
ior
iload 1
ior
iflt 1
iload 1
iload 2
iload 0
isub
if_icmple 2
1: StackMap locals:
StackMap stack:
aload 3
iload 0
iload 1
iload 2
invokestatic jdk.internal.util.Preconditions.outOfBoundsCheckFromIndexSize:(Ljava/util/function/BiFunction;III)Ljava/lang/RuntimeException;
athrow
2: StackMap locals:
StackMap stack:
iload 0
ireturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 fromIndex I
0 3 1 size I
0 3 2 length I
0 3 3 oobef Ljava/util/function/BiFunction<Ljava/lang/String;Ljava/util/List<Ljava/lang/Integer;>;TX;>;
Signature: <X:Ljava/lang/RuntimeException;>(IIILjava/util/function/BiFunction<Ljava/lang/String;Ljava/util/List<Ljava/lang/Integer;>;TX;>;)I
MethodParameters:
Name Flags
fromIndex
size
length
oobef
}
SourceFile: "Preconditions.java"
NestMembers:
jdk.internal.util.Preconditions$1
InnerClasses:
jdk.internal.util.Preconditions$1