File: //opt/alt/python37/lib/python3.7/site-packages/click/__pycache__/decorators.cpython-37.pyc
B
�P�eI � @ s� d dl Z d dlZd dlZd dlmZ d dlmZ ddlm Z ddlm
Z
ddlmZ ddlmZ dd lm
Z
dd
lmZ ddlmZ ddlmZ ejr�d dlZe�d
�Ze�d�Ze�d�Zejdejf Zejdejee
f d�Zddd�dd�Z ddd�dd�Z!dIej"e e#ejdgdf d�dd�Z$dd �e%ej&e% d!d"�d#d$�Z'ejd%e
d�Z(ej)ee
d&�d'd(��Z*ej)ej&e% ej"e( ejejege(f d)�d*d(��Z*ej)dJdej"e( ejejege(f d)�d+d(��Z*ej)dKej&e% dejejege
f d)�d,d(��Z*dLejej&e% ef ej&ej"e( ejeje
ejegeje
e(f f f d)�d-d(�Z*ejd.ed�Z+ej)eed&�d/d0��Z,ej)ej&e% ej"e+ ejejege+f d)�d1d0��Z,ej)dMdej"e+ ejejege+f d)�d2d0��Z,ej)dNej&e% dejejegef d)�d3d0��Z,dOeje%edf ej&ej"e+ ejejeejegejee+f f f d)�d4d0�Z,ejdejf edd5�d6d7�Z-dd8�e%ej&ej"e ejejegef d9�d:d;�Z.dd8�e%ej&ej"e
ejejegef d9�d<d=�Z/e%ejejegef d>�d?d@�Z0e%ejejegef d>�dAdB�Z1dPddddC�ej&e% e%ej&e% ej&e% ej&e% ejejegef dD�dEdF�Z2e%ejejegef d>�dGdH�Z3dS )Q� N)�update_wrapper)�gettext� )�Argument)�Command)�Context)�Group)�Option)� Parameter)�get_current_context)�echo�P�R�T.�FC)�boundz)t.Callable[te.Concatenate[Context, P], R]zt.Callable[P, R])�f�returnc s dddd�� fdd�}t |� �S )z]Marks a callback as wanting to receive the current context
object as first argument.
zP.argszP.kwargsr )�args�kwargsr c s � t � f| �|�S )N)r )r r )r � �A/opt/alt/python37/lib/python3.7/site-packages/click/decorators.py�new_func s zpass_context.<locals>.new_func)r )r r r )r r �pass_context s r z't.Callable[te.Concatenate[t.Any, P], R]c s dddd�� fdd�}t |� �S )z�Similar to :func:`pass_context`, but only pass the object on the
context onwards (:attr:`Context.obj`). This is useful if that object
represents the state of a nested system.
zP.argszP.kwargsr )r r r c s � t � jf| �|�S )N)r �obj)r r )r r r r , s zpass_obj.<locals>.new_func)r )r r r )r r �pass_obj&