File: //opt/saltstack/salt/lib/python3.10/site-packages/tempora/__pycache__/__init__.cpython-310.pyc
o
�N�g�N � @ s� d Z ddlZddlZddlZddlZddlZddlZddlZddlm Z G dd� d�Z
dZ dZdZ
d Zd
Zd
ZdZee Zee Zee Zejdd
�Zejed d
�Zed Zee d Ze dd� �Zdd� Zdd� ZdTdd�ZdTdd�Zdd� Zdd� Z dd� Z!d d!� Z"d"d#� Z#d$d%� Z$d&d'� Z%d(d)� Z&d*d+� Z'd,d-� Z(i d.d/�d0d/�d1d/�d2d/�d3d/�d4d5�d6d5�d7d5�d8d9�d:d9�d;d<�d=d<�d>d?�d@d?�dAdB�dCdB�dDdE�dFdFdFdG��Z)dHdI� Z*dJdK� Z+dLdM� Z,G dNdO� dO�Z-dPdQ� Z.dUdRdS�Z/dS )Vz:Objects and routines pertaining to date and time (tempora)� N)�oncec @ s0 e Zd ZdZdZ d
dd�Zdd� Zdd � ZdS )�Parsera�
*deprecated*
Datetime parser: parses a date-time string using multiple possible
formats.
>>> p = Parser(('%H%M', '%H:%M'))
>>> tuple(p.parse('1319'))
(1900, 1, 1, 13, 19, 0, 0, 1, -1)
>>> dateParser = Parser(('%m/%d/%Y', '%Y-%m-%d', '%d-%b-%Y'))
>>> tuple(dateParser.parse('2003-12-20'))
(2003, 12, 20, 0, 0, 0, 5, 354, -1)
>>> tuple(dateParser.parse('16-Dec-1994'))
(1994, 12, 16, 0, 0, 0, 4, 350, -1)
>>> tuple(dateParser.parse('5/19/2003'))
(2003, 5, 19, 0, 0, 0, 0, 139, -1)
>>> dtParser = Parser(('%Y-%m-%d %H:%M:%S', '%a %b %d %H:%M:%S %Y'))
>>> tuple(dtParser.parse('2003-12-20 19:13:26'))
(2003, 12, 20, 19, 13, 26, 5, 354, -1)
>>> tuple(dtParser.parse('Tue Jan 20 16:19:33 2004'))
(2004, 1, 20, 16, 19, 33, 1, 20, -1)
Be forewarned, a ValueError will be raised if more than one format
matches:
>>> Parser(('%H%M', '%H%M%S')).parse('732')
Traceback (most recent call last):
...
ValueError: More than one format string matched target 732.
>>> Parser(('%H',)).parse('22:21')
Traceback (most recent call last):
...
ValueError: No format strings matched the target 22:21.
)z%m/%d/%Yz%m/%d/%yz%Y-%m-%dz%d-%b-%Yz%d-%b-%yNc C s t �dt� |r
|| _d S d S )NzUse dateutil.parser)�warnings�warn�DeprecationWarning�formats)�selfr � r �D/opt/saltstack/salt/lib/python3.10/site-packages/tempora/__init__.py�__init__6 s
�zParser.__init__c C sn || _ ttd t| j| j���}| ` |s d}t|jdi t� ����t |�dks3d}t|jdi t� ����|d S )Nz.No format strings matched the target {target}.� z4More than one format string matched target {target}.r r )
�target�tuple�filter�map�_parser �
ValueError�format�locals�len)r r
�resultsZtmplr r r
�parse; s zParser.parsec C s. z
t �| j|�}W |S ty d}Y |S w )NF)�time�strptimer
r )r r �resultr r r
r G s ��z
Parser._parse�N)�__name__�
__module__�__qualname__�__doc__r r r r r r r r
r s $
r l �_�Kr4 l �m�G r iL���<