PKhXJȉ ..cjrh_template.py""" cjrh_template ============= """ import string __version__ = '2017.5.2' class Template(string.Template): """ Very thin subclass of ``string.Template``. """ def placeholders(self, allow_repeats=False): """ Return the names of the template variables in the template. Note that this returns a generator. The ``allow_repeats`` argument will cause the iteration to skip any repeated variable names. :type allow_repeats: bool :return: A generator of all the named vars :rtype: generator """ seen = set() for match in self.pattern.finditer(self.template): named = match.group('named') if not allow_repeats: if named in seen: continue else: # Structured like this so that we don't incur the memory # cost of storing previously-seen items when repeats are # allowed. seen.add(named) yield named PK!H|&Ub&cjrh_template-2017.5.2.dist-info/WHEEL HM K-*ϳR03rOK-J,/RH,Q034 /, (-JLR()*M ILR(4KM̫#DPK!H[Y )cjrh_template-2017.5.2.dist-info/METADATA}TQoF ~_A`(Pڢ}(ZNߗ;d\=^R^z嫝Uu1ʒdC{Xu]{*yaQ5fӟ1 EU%ž\[Z_`yfc-j԰@qr({C" C 1뻇?r-ȣCI\a%6 Tyy>ȥ ePHAjWMSfgݎKc8FFN:.S]IhAoJbd%uJ#GX HEۆƲƺhK΍2$z7HBg bu>Tsm;ѕgv'8oTn](%Jxo;76y:qg'&E&OH#;ړ1|E޻G6|jČ-͗"zYgK2[ԡȼJ->1!S1g8}e$2xC ͟"|vDPK!H h2'cjrh_template-2017.5.2.dist-info/RECORDͱR0нAb80bS*{޹OSǴ}}<~JDaRr~ؑA\b8+zFe4_u6Ί,q76=jƇ2Ƙy|ǬB1`ϴYC.lZ4޲A`S\QPw?wU/fPϴ(iCw kRg"7BaF#V?PKhXJȉ ..cjrh_template.pyPK!H|&Ub&\cjrh_template-2017.5.2.dist-info/WHEELPK!H[Y )cjrh_template-2017.5.2.dist-info/METADATAPK!H h2'Xcjrh_template-2017.5.2.dist-info/RECORDPK>k