U
vi4 @ s d dl mZmZmZmZmZmZ d dlZd dlmZm Z m Z d dl
mZ d dlm
Z
edZd
eee ee f ee je eee gee f ddd Zd gZdS ) )CallableIterableListOptionalTypeVarUnionN)
Observableabctyping)CompositeDisposable)default_comparer_T)secondcomparerreturnc sB |pt t| trt| n| tt tt d fdd}|S )N)sourcer c s2 | dt jt tt j d fdd
}t|S )a< Determines whether two sequences are equal by comparing the
elements pairwise using a specified equality comparer.
Examples:
>>> res = sequence_equal([1,2,3])
>>> res = sequence_equal([{ "value": 42 }], lambda x, y: x.value == y.value)
>>> res = sequence_equal(reactivex.return_value(42))
>>> res = sequence_equal(
reactivex.return_value({ "value": 42 }),
lambda x, y: x.value == y.value
)
Args:
source: Source observable to compare.
Returns:
An observable sequence that contains a single element which
indicates whether both sequences are of equal length and their
corresponding elements are equal according to the specified
equality comparer.
N)observer schedulerc s dg dgg g t d dfdd}d d fdd}t d fd d
} fdd}j|j||d
}j|j||d
}t||S )NF)xr c
s t dkrpd}z || }W n2 tk
rV } z| W Y d S d }~X Y nX |sd n&d rd n
| d S Nr Flenpop Exceptionon_erroron_nexton_completedappend)r vequale) comparer_donerr qlqr S/opt/alt/python38/lib/python3.8/site-packages/reactivex/operators/_sequenceequal.pyon_next15 s
zLsequence_equal_.