MeasureTimeKt.smali
.class public final Lkotlin/time/MeasureTimeKt;
.super Ljava/lang/Object;
.source "measureTime.kt"
# annotations
.annotation system Ldalvik/annotation/SourceDebugExtension;
value = "SMAP\nmeasureTime.kt\nKotlin\n*S Kotlin\n*F\n+ 1 measureTime.kt\nkotlin/time/MeasureTimeKt\n*L\n1#1,86:1\n33#1,7:87\n78#1,7:94\n*E\n*S KotlinDebug\n*F\n+ 1 measureTime.kt\nkotlin/time/MeasureTimeKt\n*L\n21#1,7:87\n66#1,7:94\n*E\n"
.end annotation
.annotation runtime Lkotlin/Metadata;
bv = {
0x1,
0x0,
0x3
}
d1 = {
"\u0000\"\n\u0000\n\u0002\u0018\u0002\n\u0000\n\u0002\u0018\u0002\n\u0002\u0010\u0002\n\u0002\u0008\u0002\n\u0002\u0018\u0002\n\u0000\n\u0002\u0018\u0002\n\u0002\u0008\u0002\u001a/\u0010\u0000\u001a\u00020\u00012\u000c\u0010\u0002\u001a\u0008\u0012\u0004\u0012\u00020\u00040\u0003H\u0087\u0008\u00f8\u0001\u0000\u00f8\u0001\u0001\u0082\u0002\n\n\u0008\u0008\u0001\u0012\u0002\u0010\u0001 \u0001\u00a2\u0006\u0002\u0010\u0005\u001a3\u0010\u0006\u001a\u0008\u0012\u0004\u0012\u0002H\u00080\u0007\"\u0004\u0008\u0000\u0010\u00082\u000c\u0010\u0002\u001a\u0008\u0012\u0004\u0012\u0002H\u00080\u0003H\u0087\u0008\u00f8\u0001\u0001\u0082\u0002\n\n\u0008\u0008\u0001\u0012\u0002\u0010\u0001 \u0001\u001a3\u0010\u0000\u001a\u00020\u0001*\u00020\t2\u000c\u0010\u0002\u001a\u0008\u0012\u0004\u0012\u00020\u00040\u0003H\u0087\u0008\u00f8\u0001\u0000\u00f8\u0001\u0001\u0082\u0002\n\n\u0008\u0008\u0001\u0012\u0002\u0010\u0001 \u0001\u00a2\u0006\u0002\u0010\n\u001a7\u0010\u0006\u001a\u0008\u0012\u0004\u0012\u0002H\u00080\u0007\"\u0004\u0008\u0000\u0010\u0008*\u00020\t2\u000c\u0010\u0002\u001a\u0008\u0012\u0004\u0012\u0002H\u00080\u0003H\u0087\u0008\u00f8\u0001\u0001\u0082\u0002\n\n\u0008\u0008\u0001\u0012\u0002\u0010\u0001 \u0001\u0082\u0002\u000b\n\u0002\u0008\u0019\n\u0005\u0008\u009920\u0001\u00a8\u0006\u000b"
}
d2 = {
"measureTime",
"Lkotlin/time/Duration;",
"block",
"Lkotlin/Function0;",
"",
"(Lkotlin/jvm/functions/Function0;)D",
"measureTimedValue",
"Lkotlin/time/TimedValue;",
"T",
"Lkotlin/time/TimeSource;",
"(Lkotlin/time/TimeSource;Lkotlin/jvm/functions/Function0;)D",
"kotlin-stdlib"
}
k = 0x2
mv = {
0x1,
0x4,
0x0
}
.end annotation
# direct methods
.method public static final measureTime(Lkotlin/jvm/functions/Function0;)D
.registers 3
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Lkotlin/jvm/functions/Function0<",
"Lkotlin/Unit;",
">;)D"
}
.end annotation
const-string v0, "block"
invoke-static {p0, v0}, Lkotlin/jvm/internal/Intrinsics;->checkNotNullParameter(Ljava/lang/Object;Ljava/lang/String;)V
.line 21
sget-object v0, Lkotlin/time/TimeSource$Monotonic;->INSTANCE:Lkotlin/time/TimeSource$Monotonic;
check-cast v0, Lkotlin/time/TimeSource;
.line 91
invoke-interface {v0}, Lkotlin/time/TimeSource;->markNow()Lkotlin/time/TimeMark;
move-result-object v0
.line 92
invoke-interface {p0}, Lkotlin/jvm/functions/Function0;->invoke()Ljava/lang/Object;
.line 93
invoke-virtual {v0}, Lkotlin/time/TimeMark;->elapsedNow-UwyO8pc()D
move-result-wide v0
return-wide v0
.end method
.method public static final measureTime(Lkotlin/time/TimeSource;Lkotlin/jvm/functions/Function0;)D
.registers 3
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Lkotlin/time/TimeSource;",
"Lkotlin/jvm/functions/Function0<",
"Lkotlin/Unit;",
">;)D"
}
.end annotation
const-string v0, "$this$measureTime"
invoke-static {p0, v0}, Lkotlin/jvm/internal/Intrinsics;->checkNotNullParameter(Ljava/lang/Object;Ljava/lang/String;)V
const-string v0, "block"
invoke-static {p1, v0}, Lkotlin/jvm/internal/Intrinsics;->checkNotNullParameter(Ljava/lang/Object;Ljava/lang/String;)V
.line 37
invoke-interface {p0}, Lkotlin/time/TimeSource;->markNow()Lkotlin/time/TimeMark;
move-result-object p0
.line 38
invoke-interface {p1}, Lkotlin/jvm/functions/Function0;->invoke()Ljava/lang/Object;
.line 39
invoke-virtual {p0}, Lkotlin/time/TimeMark;->elapsedNow-UwyO8pc()D
move-result-wide p0
return-wide p0
.end method
.method public static final measureTimedValue(Lkotlin/jvm/functions/Function0;)Lkotlin/time/TimedValue;
.registers 5
.annotation system Ldalvik/annotation/Signature;
value = {
"<T:",
"Ljava/lang/Object;",
">(",
"Lkotlin/jvm/functions/Function0<",
"+TT;>;)",
"Lkotlin/time/TimedValue<",
"TT;>;"
}
.end annotation
const-string v0, "block"
invoke-static {p0, v0}, Lkotlin/jvm/internal/Intrinsics;->checkNotNullParameter(Ljava/lang/Object;Ljava/lang/String;)V
.line 66
sget-object v0, Lkotlin/time/TimeSource$Monotonic;->INSTANCE:Lkotlin/time/TimeSource$Monotonic;
check-cast v0, Lkotlin/time/TimeSource;
.line 98
invoke-interface {v0}, Lkotlin/time/TimeSource;->markNow()Lkotlin/time/TimeMark;
move-result-object v0
.line 99
invoke-interface {p0}, Lkotlin/jvm/functions/Function0;->invoke()Ljava/lang/Object;
move-result-object p0
.line 100
new-instance v1, Lkotlin/time/TimedValue;
invoke-virtual {v0}, Lkotlin/time/TimeMark;->elapsedNow-UwyO8pc()D
move-result-wide v2
const/4 v0, 0x0
invoke-direct {v1, p0, v2, v3, v0}, Lkotlin/time/TimedValue;-><init>(Ljava/lang/Object;DLkotlin/jvm/internal/DefaultConstructorMarker;)V
return-object v1
.end method
.method public static final measureTimedValue(Lkotlin/time/TimeSource;Lkotlin/jvm/functions/Function0;)Lkotlin/time/TimedValue;
.registers 5
.annotation system Ldalvik/annotation/Signature;
value = {
"<T:",
"Ljava/lang/Object;",
">(",
"Lkotlin/time/TimeSource;",
"Lkotlin/jvm/functions/Function0<",
"+TT;>;)",
"Lkotlin/time/TimedValue<",
"TT;>;"
}
.end annotation
const-string v0, "$this$measureTimedValue"
invoke-static {p0, v0}, Lkotlin/jvm/internal/Intrinsics;->checkNotNullParameter(Ljava/lang/Object;Ljava/lang/String;)V
const-string v0, "block"
invoke-static {p1, v0}, Lkotlin/jvm/internal/Intrinsics;->checkNotNullParameter(Ljava/lang/Object;Ljava/lang/String;)V
.line 82
invoke-interface {p0}, Lkotlin/time/TimeSource;->markNow()Lkotlin/time/TimeMark;
move-result-object p0
.line 83
invoke-interface {p1}, Lkotlin/jvm/functions/Function0;->invoke()Ljava/lang/Object;
move-result-object p1
.line 84
new-instance v0, Lkotlin/time/TimedValue;
invoke-virtual {p0}, Lkotlin/time/TimeMark;->elapsedNow-UwyO8pc()D
move-result-wide v1
const/4 p0, 0x0
invoke-direct {v0, p1, v1, v2, p0}, Lkotlin/time/TimedValue;-><init>(Ljava/lang/Object;DLkotlin/jvm/internal/DefaultConstructorMarker;)V
return-object v0
.end method