File: //lib64/python3.6/distutils/__pycache__/fancy_getopt.cpython-36.pyc
3
  \xE  �               @   s�   d Z ddlZddlZddlZddlZddlT dZejde �Zejdeef �Z	e
jdd�ZG d	d
� d
�Z
dd� Zd
d� ejD �Zdd� Zdd� ZG dd� d�Zedkr�dZx2dD ]*Zede � edjeee��� e�  q�W dS )a6  distutils.fancy_getopt
Wrapper around the standard getopt module that provides the following
additional features:
  * short and long options are tied together
  * options have help strings, so fancy_getopt could potentially
    create a complete usage summary
  * options set attributes of a passed-in object
�    N)�*z[a-zA-Z](?:[a-zA-Z0-9-]*)z^%s$z^(%s)=!(%s)$�-�_c               @   s�   e Zd ZdZddd�Zdd� Zdd� Zd d	d
�Zdd� Zd
d� Z	dd� Z
dd� Zdd� Zdd� Z
d!dd�Zdd� Zd"dd�Zd#dd�ZdS )$�FancyGetopta�  Wrapper around the standard 'getopt()' module that provides some
    handy extra functionality:
      * short and long options are tied together
      * options have help strings, and help text can be assembled
        from them
      * options set attributes of a passed-in object
      * boolean options can have "negative aliases" -- eg. if
        --quiet is the "negative alias" of --verbose, then "--quiet"
        on the command line sets 'verbose' to false
    Nc             C   sN   || _ i | _| j r| j�  i | _i | _g | _g | _i | _i | _i | _	g | _
d S )N)�option_table�option_index�_build_index�alias�negative_alias�
short_opts�	long_opts�
short2long�	attr_name�	takes_arg�option_order)�selfr   � r   �./usr/lib64/python3.6/distutils/fancy_getopt.py�__init__)   s    	zFancyGetopt.__init__c             C   s,   | j j�  x| jD ]}|| j |d <