;ò VÉ]@c@sœdZdkZdkZdkZdfd„ƒYZd„Zd„Zd„Zd„Zd„Z d „Z d „Z d „Z hd ei d <dei<dd<dd<de ei d ƒ<de eiƒ<de dƒ group name, or None if there is no nameN(sselfs groupdictsitemsskeysvalsid(sselfsidsvalskey((sMartel/convert_re.pys reverse_name/s   (s__name__s __module__s__init__sNones opengroups closegroups checkgroups reverse_name(((sMartel/convert_re.pys GroupNamess     cCstit|ƒdƒSdS(Ni(s ExpressionsLiteralschrsval(s group_namessnamesval((sMartel/convert_re.pysconvert_literal9scCstit|ƒdƒSdS(Ni(s ExpressionsLiteralschrsval(s group_namessnamesval((sMartel/convert_re.pysconvert_not_literal=scCsP|djotiƒSn|djotiƒSntdt|ƒƒ‚dS(Ns at_beginningsat_endsUnknown at name: %s(swheres Expressions AtBeginningsAtEndsAssertionErrorsrepr(s group_namessnameswhere((sMartel/convert_re.pys convert_atBs   cCs)|tjptd|‚tiƒSdS(Ns)what does it mean when the field is '%s'?(signoresNonesAssertionErrors ExpressionsDot(s group_namessnamesignore((sMartel/convert_re.pys convert_anyJscCs@|\}}|djp td‚tit||ƒdƒSdS(Nisdoes not support lookbehindi(s directionstermssAssertionErrors ExpressionsAsserts convert_lists group_names(s group_namessnames.4s directionsterms((sMartel/convert_re.pysconvert_assertOs cCs@|\}}|djp td‚tit||ƒdƒSdS(Nisdoes not support lookbehind(s directionstermssAssertionErrors ExpressionsAsserts convert_lists group_names(s group_namessnames.4s directionsterms((sMartel/convert_re.pysconvert_assert_notTs cCs|\}}|tjptdt|ƒ‚g}x$|D]}|it||ƒƒq:Wt |ƒdjo |dSnt i t |ƒƒSdS(Ns what is %s?ii(signoresbranchessNonesAssertionErrorsreprsresultssbranchsappends convert_lists group_namesslens ExpressionsAltstuple(s group_namessnames.4signoresbranchessresultssbranch((sMartel/convert_re.pysconvert_branchZs ! cCsg}t|tdƒƒ ot|ƒ}nx;tttdƒƒD]$}||jo|i |ƒqCqCWt i |dƒSdS(s<s -> a string containing all the characters not present in ssiN( sletterss isinstancessstypesstrsmapschrsrangescsappendsstringsjoin(ssscsletters((sMartel/convert_re.pysinvertds s category_words 0123456789_scategory_digitscategory_spaces scategory_newlines scategory_not_wordscategory_not_digitscategory_not_spacecCsú|dddj}d}xÉ||D]½}|ddjo|t|dƒ}q%|ddjoBxzt|dd|dddƒD]}|t|ƒ}q‰Wq%|ddjo|t|d}q%td|dƒ‚q%Wt i ||ƒSdS( Nisnegatessliteralisrangescategorysunknown option for 'in': %s( stermssnegatessscschrsrangesis categoriessAssertionErrors ExpressionsAny(s group_namessnamestermsscsisssnegate((sMartel/convert_re.pys convert_in}s $c Cs>|\}}|i|ƒ} d}h} | tj oti | dƒ}n|djoÇdk }| |d} | o h} n$|i | |dddddƒ} | | } xn| i ƒD]\\}}t|ƒdjo/tdt|ƒt|ƒt| ƒfƒ‚n|d| | the Expression tree for the given pattern stringsstrspatternN(s msre_parsesparsespatterns GroupNamessxs convert_list(spatternsx((sMartel/convert_re.pysmake_expressionçs(s__doc__sstrings msre_parses Expressions GroupNamessconvert_literalsconvert_not_literals convert_ats convert_anysconvert_assertsconvert_assert_notsconvert_branchsinvertsletterssdigitss categoriess convert_insconvert_subpatternsconvert_newlinesconvert_max_repeatsconvert_grouprefsconverter_tables convert_listsmake_expression(sconvert_not_literalsconvert_grouprefsstringsmake_expressionsconvert_assertsconvert_literals convert_atsconvert_branchs convert_ins GroupNamessconvert_newlines convert_listsconvert_max_repeatsconverter_tablesconvert_subpatterns msre_parsesconvert_assert_nots Expressionsinverts categoriess convert_any((sMartel/convert_re.pys?s(        k  "   r