o $"bD @sddlmZmZddlZddlZddlmZmZddlm Z ddl m Z ddl m Z ejdkr6dd lmZndd lmZe eGd d d e ZdS) )absolute_importunicode_literalsN)ABCMetaabstractmethod) add_metaclass) ensure_text) Activator)) read_binaryc@sLeZdZeddZddZddZddZd d Zd d Z e d dZ dS)ViaTemplateActivatorcCstN)NotImplementedError)selfrD/usr/lib/python3/dist-packages/virtualenv/activation/via_template.py templatesszViaTemplateActivator.templatescCs@|j}|||}|||||}|jdur|j|jd<|S)Nprompt)bin_dir replacements _generater flag_prompt pyenv_cfg)rcreator dest_folderr generatedrrrgenerates    zViaTemplateActivator.generatecCsD|jdurdn|jtt|j|jtt|j|jttjdS)N)__VIRTUAL_PROMPT____VIRTUAL_ENV____VIRTUAL_NAME__ __BIN_NAME__ __PATH_SEP__) rrstrdestenv_namer relative_toospathsep)rrrrrrr!s  z!ViaTemplateActivator.replacementsc CsHg}|D]}||||}|||}||d||q|S)Nutf-8)instantiate_templateas_name write_bytesencodeappend) rrr to_folderrrtemplatetextr%rrrr*s zViaTemplateActivator._generatecCs|jSr)name)rr1rrrr,4szViaTemplateActivator.as_namecCsLt|jt|}|jddd}|D]\}}|||}|||}q|S)Nr*strict)errors)r __module__r$decodeitems _repr_unicodereplace)rrr1rbinaryr2keyvaluerrrr+7s  z)ViaTemplateActivator.instantiate_templatecCs|Srr)rr=rrrr9@sz"ViaTemplateActivator._repr_unicodeN) __name__r6 __qualname__rrrrrr,r+ staticmethodr9rrrrr s    r ) __future__rrr(sysabcrrsixrvirtualenv.util.sixr activatorr version_infoimportlib.resourcesr importlib_resourcesr rrrrs