.class public final Lj0/s/a; .super Ljava/lang/Object; .source "SequencesJVM.kt" # interfaces .implements Lkotlin/sequences/Sequence; # annotations .annotation system Ldalvik/annotation/Signature; value = { "", "Ljava/lang/Object;", "Lkotlin/sequences/Sequence<", "TT;>;" } .end annotation # instance fields .field public final a:Ljava/util/concurrent/atomic/AtomicReference; .annotation system Ldalvik/annotation/Signature; value = { "Ljava/util/concurrent/atomic/AtomicReference<", "Lkotlin/sequences/Sequence<", "TT;>;>;" } .end annotation .end field # direct methods .method public constructor (Lkotlin/sequences/Sequence;)V .locals 1 .annotation system Ldalvik/annotation/Signature; value = { "(", "Lkotlin/sequences/Sequence<", "+TT;>;)V" } .end annotation invoke-direct {p0}, Ljava/lang/Object;->()V new-instance v0, Ljava/util/concurrent/atomic/AtomicReference; invoke-direct {v0, p1}, Ljava/util/concurrent/atomic/AtomicReference;->(Ljava/lang/Object;)V iput-object v0, p0, Lj0/s/a;->a:Ljava/util/concurrent/atomic/AtomicReference; return-void .end method # virtual methods .method public iterator()Ljava/util/Iterator; .locals 2 .annotation system Ldalvik/annotation/Signature; value = { "()", "Ljava/util/Iterator<", "TT;>;" } .end annotation iget-object v0, p0, Lj0/s/a;->a:Ljava/util/concurrent/atomic/AtomicReference; const/4 v1, 0x0 invoke-virtual {v0, v1}, Ljava/util/concurrent/atomic/AtomicReference;->getAndSet(Ljava/lang/Object;)Ljava/lang/Object; move-result-object v0 check-cast v0, Lkotlin/sequences/Sequence; if-eqz v0, :cond_0 invoke-interface {v0}, Lkotlin/sequences/Sequence;->iterator()Ljava/util/Iterator; move-result-object v0 return-object v0 :cond_0 new-instance v0, Ljava/lang/IllegalStateException; const-string v1, "This sequence can be consumed only once." invoke-direct {v0, v1}, Ljava/lang/IllegalStateException;->(Ljava/lang/String;)V throw v0 .end method