K ip dZddlZddlmZdedefdZdedefdZd edefd Zd edefd Z d edefdZ dejdefdZ dedefdZ dedefdZdedefdZdedefdZdedefdZdedejfdZy)z"Contains the Duration helper APIs.N)Durationvaluereturnc<t}|j||S)a.Converts a string to Duration. Args: value: A string to be converted. The string must end with 's'. Any fractional digits (or none) are accepted as long as they fit into precision. For example: "1s", "1.01s", "1.0000001s", "-3.100s" Raises: ValueError: On parsing problems. )rFromJsonString)rdurations ^/mnt/ssd/data/python-lab/Trading/venv/lib/python3.12/site-packages/google/protobuf/duration.pyfrom_json_stringr sZ( % /microsc<t}|j||S)z"Converts microseconds to Duration.)rFromMicroseconds)r rs r from_microsecondsr Z( F# /r millisc<t}|j||S)z"Converts milliseconds to Duration.)rFromMilliseconds)rrs r from_millisecondsr&rr nanosc<t}|j||S)z!Converts nanoseconds to Duration.)rFromNanoseconds)rrs r from_nanosecondsr-s Z( 5! /r secondsc<t}|j||S)zConverts seconds to Duration.)r FromSeconds)rrs r from_secondsr4s Z( w /r tdc<t}|j||S)zConverts timedelta to Duration.)r FromTimedelta)rrs r from_timedeltar ;s Z(  /r rc"|jS)aConverts Duration to string format. Returns: A string converted from self. The string format will contains 3, 6, or 9 fractional digits depending on the precision required to represent the exact Duration value. For example: "1s", "1.010s", "1.000000100s", "-3.100s" ) ToJsonStringrs r to_json_stringr$Bs     r c"|jS)z$Converts a Duration to microseconds.)ToMicrosecondsr#s r to_microsecondsr'N  ""r c"|jS)z$Converts a Duration to milliseconds.)ToMillisecondsr#s r to_millisecondsr+Sr(r c"|jS)z#Converts a Duration to nanoseconds.) ToNanosecondsr#s r to_nanosecondsr.Xs    !!r c"|jS)zConverts a Duration to seconds.) ToSecondsr#s r to_secondsr1]s    r c"|jS)zConverts Duration to timedelta.) ToTimedeltar#s r to_timedeltar4bs    r )__doc__datetimegoogle.protobuf.duration_pb2rstrr floatrrrr timedeltar r$intr'r+r.r1r4r r r=s)1 C H  eeEh%Hx))h !X !# !#h#3# #h#3# "X"#" c  8 (:(: r