MINI MINI MANI MO
3
  \                 @   s~   d dl Z d dlZd dlZdgZG dd dZdd Zyd dlZW n ek
rX   dZY n"X ej	e j
 e jdd  d	ZdS )
    N	Completerc               @   s6   e Zd ZdddZdd Zdd Zdd	 Zd
d ZdS )
r   Nc             C   s8   |rt |t rtd|d kr(d| _nd| _|| _d S )Nznamespace must be a dictionary   r   )
isinstancedict	TypeErroruse_main_ns	namespace)selfr    r
   #/usr/lib64/python3.6/rlcompleter.py__init__'   s    zCompleter.__init__c             C   s   | j rtj| _|j sB|dkr>tr8tjd tj  dS dS nd S |dkrld|kr`| j	|| _
n| j|| _
y
| j
| S  tk
r   d S X d S )Nr   	 .)
r   __main____dict__r   strip_readline_availablereadlineZinsert_textZ	redisplayattr_matchesmatchesglobal_matches
IndexError)r	   textstater
   r
   r   completeB   s$    
zCompleter.completec             C   s   t |r|d }|S )N()callable)r	   valwordr
   r
   r   _callable_postfixa   s    zCompleter._callable_postfixc       	   	   C   s   dd l }g }dh}t|}xT|jD ]J}|d | |kr"|j| |dkrR|d }n|dkrb|d
 }|j| q"W x^| jtjgD ]N}xH|j D ]<\}}|d | |kr||kr|j| |j| j	|| qW q~W |S )Nr   __builtins__finallytry:FalseNoneTruebreakcontinuepasselse >   r"