U
    T?hp
                     @   s   d Z ddlZddlmZ eedddZeeddd	Zeed
ddZeedddZ	eedddZ
ejedddZeedddZeedddZeedddZeedddZeeddd Zeejdd!d"ZdS )#z"Contains the Duration helper APIs.    N)Duration)valuereturnc                 C   s   t  }||  |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.
  )r   ZFromJsonString)r   duration r   J/var/www/html/venv/lib/python3.8/site-packages/google/protobuf/duration.pyfrom_json_string   s    
r   )microsr   c                 C   s   t  }||  |S )z"Converts microseconds to Duration.)r   ZFromMicroseconds)r	   r   r   r   r   from_microseconds   s    
r
   )millisr   c                 C   s   t  }||  |S )z"Converts milliseconds to Duration.)r   ZFromMilliseconds)r   r   r   r   r   from_milliseconds&   s    
r   )nanosr   c                 C   s   t  }||  |S )z!Converts nanoseconds to Duration.)r   ZFromNanoseconds)r   r   r   r   r   from_nanoseconds-   s    
r   )secondsr   c                 C   s   t  }||  |S )zConverts seconds to Duration.)r   ZFromSeconds)r   r   r   r   r   from_seconds4   s    
r   )tdr   c                 C   s   t  }||  |S )zConverts timedelta to Duration.)r   ZFromTimedelta)r   r   r   r   r   from_timedelta;   s    
r   )r   r   c                 C   s   |   S )a  Converts 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"
  )ZToJsonStringr   r   r   r   to_json_stringB   s    	r   c                 C   s   |   S )z$Converts a Duration to microseconds.)ZToMicrosecondsr   r   r   r   to_microsecondsN   s    r   c                 C   s   |   S )z$Converts a Duration to milliseconds.)ZToMillisecondsr   r   r   r   to_millisecondsS   s    r   c                 C   s   |   S )z#Converts a Duration to nanoseconds.)ZToNanosecondsr   r   r   r   to_nanosecondsX   s    r   c                 C   s   |   S )zConverts a Duration to seconds.)Z	ToSecondsr   r   r   r   
to_seconds]   s    r   c                 C   s   |   S )zConverts Duration to timedelta.)ZToTimedeltar   r   r   r   to_timedeltab   s    r   )__doc__datetimeZgoogle.protobuf.duration_pb2r   strr   floatr
   r   r   r   	timedeltar   r   intr   r   r   r   r   r   r   r   r   <module>   s   