.class public final Lkotlin/time/MonotonicTimeSource; .super Ljava/lang/Object; .source "SourceFile" # static fields .field public static final INSTANCE:Lkotlin/time/MonotonicTimeSource; .field public static final zero:J # direct methods .method static constructor ()V .locals 2 new-instance v0, Lkotlin/time/MonotonicTimeSource; invoke-direct {v0}, Lkotlin/time/MonotonicTimeSource;->()V sput-object v0, Lkotlin/time/MonotonicTimeSource;->INSTANCE:Lkotlin/time/MonotonicTimeSource; .line 12 invoke-static {}, Ljava/lang/System;->nanoTime()J move-result-wide v0 sput-wide v0, Lkotlin/time/MonotonicTimeSource;->zero:J return-void .end method .method public constructor ()V .locals 0 .line 10 invoke-direct {p0}, Ljava/lang/Object;->()V return-void .end method # virtual methods .method public final differenceBetween-fRLX17w(JJ)J .locals 1 .line 21 sget-object v0, Lkotlin/time/DurationUnit;->NANOSECONDS:Lkotlin/time/DurationUnit; invoke-static {p1, p2, p3, p4, v0}, Lkotlin/time/LongSaturatedMathKt;->saturatingOriginsDiff(JJLkotlin/time/DurationUnit;)J move-result-wide p1 return-wide p1 .end method .method public final elapsedFrom-6eNON_k(J)J .locals 3 .line 18 invoke-virtual {p0}, Lkotlin/time/MonotonicTimeSource;->read()J move-result-wide v0 sget-object v2, Lkotlin/time/DurationUnit;->NANOSECONDS:Lkotlin/time/DurationUnit; invoke-static {v0, v1, p1, p2, v2}, Lkotlin/time/LongSaturatedMathKt;->saturatingDiff(JJLkotlin/time/DurationUnit;)J move-result-wide p1 return-wide p1 .end method .method public markNow-z9LOYto()J .locals 2 .line 16 invoke-virtual {p0}, Lkotlin/time/MonotonicTimeSource;->read()J move-result-wide v0 invoke-static {v0, v1}, Lkotlin/time/TimeSource$Monotonic$ValueTimeMark;->constructor-impl(J)J move-result-wide v0 return-wide v0 .end method .method public final read()J .locals 4 .line 13 invoke-static {}, Ljava/lang/System;->nanoTime()J move-result-wide v0 sget-wide v2, Lkotlin/time/MonotonicTimeSource;->zero:J sub-long/2addr v0, v2 return-wide v0 .end method .method public toString()Ljava/lang/String; .locals 1 const-string v0, "TimeSource(System.nanoTime())" return-object v0 .end method