final class reactor.core.publisher.MonoSequenceEqual<T> extends reactor.core.publisher.Mono<java.lang.Boolean> implements reactor.core.publisher.SourceProducer<java.lang.Boolean>
minor version: 0
major version: 59
flags: flags: (0x0030) ACC_FINAL, ACC_SUPER
this_class: reactor.core.publisher.MonoSequenceEqual
super_class: reactor.core.publisher.Mono
{
final org.reactivestreams.Publisher<? extends T> first;
descriptor: Lorg/reactivestreams/Publisher;
flags: (0x0010) ACC_FINAL
Signature: Lorg/reactivestreams/Publisher<+TT;>;
final org.reactivestreams.Publisher<? extends T> second;
descriptor: Lorg/reactivestreams/Publisher;
flags: (0x0010) ACC_FINAL
Signature: Lorg/reactivestreams/Publisher<+TT;>;
final java.util.function.BiPredicate<? super T, ? super T> comparer;
descriptor: Ljava/util/function/BiPredicate;
flags: (0x0010) ACC_FINAL
Signature: Ljava/util/function/BiPredicate<-TT;-TT;>;
final int prefetch;
descriptor: I
flags: (0x0010) ACC_FINAL
void <init>(org.reactivestreams.Publisher<? extends T>, org.reactivestreams.Publisher<? extends T>, java.util.function.BiPredicate<? super T, ? super T>, );
descriptor: (Lorg/reactivestreams/Publisher;Lorg/reactivestreams/Publisher;Ljava/util/function/BiPredicate;I)V
flags: (0x0000)
Code:
stack=5, locals=5, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 0
invokespecial reactor.core.publisher.Mono.<init>:()V
1: aload 0
aload 1
ldc "first"
invokestatic java.util.Objects.requireNonNull:(Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object;
checkcast org.reactivestreams.Publisher
putfield reactor.core.publisher.MonoSequenceEqual.first:Lorg/reactivestreams/Publisher;
2: aload 0
aload 2
ldc "second"
invokestatic java.util.Objects.requireNonNull:(Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object;
checkcast org.reactivestreams.Publisher
putfield reactor.core.publisher.MonoSequenceEqual.second:Lorg/reactivestreams/Publisher;
3: aload 0
aload 3
ldc "comparer"
invokestatic java.util.Objects.requireNonNull:(Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object;
checkcast java.util.function.BiPredicate
putfield reactor.core.publisher.MonoSequenceEqual.comparer:Ljava/util/function/BiPredicate;
4: iload 4
iconst_1
if_icmpge 8
5: new java.lang.IllegalArgumentException
dup
new java.lang.StringBuilder
dup
ldc "Buffer size must be strictly positive: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
6: iload 4
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
7: invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
8: StackMap locals: reactor.core.publisher.MonoSequenceEqual org.reactivestreams.Publisher org.reactivestreams.Publisher java.util.function.BiPredicate int
StackMap stack:
aload 0
iload 4
putfield reactor.core.publisher.MonoSequenceEqual.prefetch:I
9: return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 this Lreactor/core/publisher/MonoSequenceEqual<TT;>;
0 10 1 first Lorg/reactivestreams/Publisher<+TT;>;
0 10 2 second Lorg/reactivestreams/Publisher<+TT;>;
0 10 3 comparer Ljava/util/function/BiPredicate<-TT;-TT;>;
0 10 4 prefetch I
Signature: (Lorg/reactivestreams/Publisher<+TT;>;Lorg/reactivestreams/Publisher<+TT;>;Ljava/util/function/BiPredicate<-TT;-TT;>;I)V
MethodParameters:
Name Flags
first
second
comparer
prefetch
public void subscribe(reactor.core.CoreSubscriber<? super java.lang.Boolean>);
descriptor: (Lreactor/core/CoreSubscriber;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=7, locals=3, args_size=2
start local 0 start local 1 0: new reactor.core.publisher.MonoSequenceEqual$EqualCoordinator
dup
aload 1
1: aload 0
getfield reactor.core.publisher.MonoSequenceEqual.prefetch:I
aload 0
getfield reactor.core.publisher.MonoSequenceEqual.first:Lorg/reactivestreams/Publisher;
aload 0
getfield reactor.core.publisher.MonoSequenceEqual.second:Lorg/reactivestreams/Publisher;
aload 0
getfield reactor.core.publisher.MonoSequenceEqual.comparer:Ljava/util/function/BiPredicate;
2: invokespecial reactor.core.publisher.MonoSequenceEqual$EqualCoordinator.<init>:(Lreactor/core/CoreSubscriber;ILorg/reactivestreams/Publisher;Lorg/reactivestreams/Publisher;Ljava/util/function/BiPredicate;)V
astore 2
start local 2 3: aload 1
aload 2
invokeinterface reactor.core.CoreSubscriber.onSubscribe:(Lorg/reactivestreams/Subscription;)V
4: aload 2
invokevirtual reactor.core.publisher.MonoSequenceEqual$EqualCoordinator.subscribe:()V
5: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lreactor/core/publisher/MonoSequenceEqual<TT;>;
0 6 1 actual Lreactor/core/CoreSubscriber<-Ljava/lang/Boolean;>;
3 6 2 ec Lreactor/core/publisher/MonoSequenceEqual$EqualCoordinator<TT;>;
Signature: (Lreactor/core/CoreSubscriber<-Ljava/lang/Boolean;>;)V
MethodParameters:
Name Flags
actual
public java.lang.Object scanUnsafe(reactor.core.Scannable$Attr);
descriptor: (Lreactor/core/Scannable$Attr;)Ljava/lang/Object;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 1
getstatic reactor.core.Scannable$Attr.PREFETCH:Lreactor/core/Scannable$Attr;
if_acmpne 1
aload 0
getfield reactor.core.publisher.MonoSequenceEqual.prefetch:I
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
areturn
1: StackMap locals:
StackMap stack:
aload 1
getstatic reactor.core.Scannable$Attr.RUN_STYLE:Lreactor/core/Scannable$Attr;
if_acmpne 2
getstatic reactor.core.Scannable$Attr$RunStyle.SYNC:Lreactor/core/Scannable$Attr$RunStyle;
areturn
2: StackMap locals:
StackMap stack:
aconst_null
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lreactor/core/publisher/MonoSequenceEqual<TT;>;
0 3 1 key Lreactor/core/Scannable$Attr;
MethodParameters:
Name Flags
key
}
Signature: <T:Ljava/lang/Object;>Lreactor/core/publisher/Mono<Ljava/lang/Boolean;>;Lreactor/core/publisher/SourceProducer<Ljava/lang/Boolean;>;
SourceFile: "MonoSequenceEqual.java"
NestMembers:
reactor.core.publisher.MonoSequenceEqual$EqualCoordinator reactor.core.publisher.MonoSequenceEqual$EqualSubscriber
InnerClasses:
public Attr = reactor.core.Scannable$Attr of reactor.core.Scannable
public final RunStyle = reactor.core.Scannable$Attr$RunStyle of reactor.core.Scannable$Attr
final EqualCoordinator = reactor.core.publisher.MonoSequenceEqual$EqualCoordinator of reactor.core.publisher.MonoSequenceEqual
final EqualSubscriber = reactor.core.publisher.MonoSequenceEqual$EqualSubscriber of reactor.core.publisher.MonoSequenceEqual