2022-06-10 21:38:30 +09:00

85 lines
2.4 KiB
Smali

.class public abstract Lcom/google/common/util/concurrent/Monitor$Guard;
.super Ljava/lang/Object;
.source "Monitor.java"
# annotations
.annotation build Lcom/google/common/annotations/Beta;
.end annotation
.annotation system Ldalvik/annotation/EnclosingClass;
value = Lcom/google/common/util/concurrent/Monitor;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x409
name = "Guard"
.end annotation
# instance fields
.field public final condition:Ljava/util/concurrent/locks/Condition;
.field public final monitor:Lcom/google/common/util/concurrent/Monitor;
.annotation build Lcom/google/j2objc/annotations/Weak;
.end annotation
.end field
.field public next:Lcom/google/common/util/concurrent/Monitor$Guard;
.annotation build Lcom/google/errorprone/annotations/concurrent/GuardedBy;
value = "monitor.lock"
.end annotation
.annotation runtime Ljavax/annotation/CheckForNull;
.end annotation
.end field
.field public waiterCount:I
.annotation build Lcom/google/errorprone/annotations/concurrent/GuardedBy;
value = "monitor.lock"
.end annotation
.end field
# direct methods
.method public constructor <init>(Lcom/google/common/util/concurrent/Monitor;)V
.locals 1
.line 1
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
const/4 v0, 0x0
.line 2
iput v0, p0, Lcom/google/common/util/concurrent/Monitor$Guard;->waiterCount:I
const-string v0, "monitor"
.line 3
invoke-static {p1, v0}, Lcom/google/common/base/Preconditions;->checkNotNull(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
move-result-object v0
check-cast v0, Lcom/google/common/util/concurrent/Monitor;
iput-object v0, p0, Lcom/google/common/util/concurrent/Monitor$Guard;->monitor:Lcom/google/common/util/concurrent/Monitor;
.line 4
invoke-static {p1}, Lcom/google/common/util/concurrent/Monitor;->access$000(Lcom/google/common/util/concurrent/Monitor;)Ljava/util/concurrent/locks/ReentrantLock;
move-result-object p1
invoke-virtual {p1}, Ljava/util/concurrent/locks/ReentrantLock;->newCondition()Ljava/util/concurrent/locks/Condition;
move-result-object p1
iput-object p1, p0, Lcom/google/common/util/concurrent/Monitor$Guard;->condition:Ljava/util/concurrent/locks/Condition;
return-void
.end method
# virtual methods
.method public abstract isSatisfied()Z
.end method