JFIFxxC      C  " }!1AQa"q2#BR$3br %&'()*456789:CDEFGHIJSTUVWXYZcdefghijstuvwxyz w!1AQaq"2B #3RbrJFIFxxC      C  " }!1AQa"q2#BR$3br %&'()*456789:CDEFGHIJSTUVWXYZcdefghijstuvwxyz w!1AQaq"2B #3Rbr ] @sddlZddlZddlZdgZGdddZddZyddlZWnek rvdZYn-Xej ej ej ddd ZdS) N Completerc@sOeZdZdddZddZddZdd Zd d ZdS) rNcCsP|r"t|t r"td|dkr:d|_nd|_||_dS)Nznamespace must be a dictionaryr) isinstancedict TypeError use_main_ns namespace)selfrr 0/opt/alt/python35/lib64/python3.5/rlcompleter.py__init__'s     zCompleter.__init__c Cs|jrtj|_|jsY|dkrUtrNtjdtjdSdSndS|dkrd|kr|j ||_ n|j ||_ y|j |SWnt k rdSYnXdS)Nr .) r__main____dict__rstrip_readline_availablereadlineZ insert_textZ redisplay attr_matchesmatchesglobal_matches IndexError)r textstater r r completeBs$         zCompleter.completecCst|r|d}|S)N()callable)r valwordr r r _callable_postfixas  zCompleter._callable_postfixc Csddl}g}dh}t|}xA|jD]6}|d||kr1|j||j|q1Wx|jtjgD]k}xb|jD]T\}}|d||kr||kr|j||j|j ||qWq~W|S)Nr __builtins__) keywordlenkwlistaddappendrbuiltinsritemsr ) r rr"rseennrZnspacerr r r rfs    " !zCompleter.global_matchesc Cs[ddl}|jd|}|s(gS|jdd\}}yt||j}Wntk rngSYnXtt|}|jdt |dr|j d|j t |j g}t|} xx|D]p} | d| |kryt|| } Wntk rwYnX|j| d|| f} |j| qW|j|S)Nrz(\w+(\.\w+)*)\.(\w*)rr! __class__z%s.%s)rematchgroupevalr Exceptionsetdirdiscardhasattrr%updateget_class_membersr,r#getattrr r&sort) r rr-mexprattrZ thisobjectZwordsrr*rrr r r r|s4         zCompleter.attr_matches)__name__ __module__ __qualname__r rr rrr r r r r&s    cCsCt|}t|dr?x!|jD]}|t|}q%W|S)N __bases__)r3r5r@r7)klassretbaser r r r7s  r7FcCs tjdS)N)r set_completerr r r r srET) atexitr'r__all__rr7r ImportErrorrrDrregisterr r r r  s