3 \@s8dZdZddlmZmZGdddeZGdddeZeedZd d Z e d Z e d.d =e dZ e dZ e eeeeeeeeeiZeeeeiZeeee iZ!ee"ee#iZ$e%e%e&e&e'e'e(e(e)e*e+e,e-e-e.e.iZ/e%e0e&e1e'e2e(e3e)e4e+e5e-e6e.e7iZ8dZ9d Z:dZ;dZdZ?dZ@dZAdZBd ZCdZDeEdkr4ddZFeGddZHeHjIdeHjIdeeFeHe deFeHe d eFeHe d eHjId!e9eHjId"e:eHjId#e;eHjId$e<eHjId%e=eHjId&e>eHjId'e?eHjId(e@eHjId)eAeHjId*eBeHjId+eCeHjId,eDWd QRXeJd-d S)/zInternal support module for sreiuS3) MAXREPEAT MAXGROUPScs"eZdZdZdfdd ZZS)erroraiException raised for invalid regular expressions. Attributes: msg: The unformatted error message pattern: The regular expression pattern pos: The index in the pattern where compilation failed (may be None) lineno: The line corresponding to pos (may be None) colno: The column corresponding to pos (may be None) Ncs||_||_||_|dk r|dk rd||f}t|tr>d}nd}|j|d|d|_||j|d||_||krd||j|jf}n d|_|_t j |dS)Nz%s at position %d  rz%s (line %d, column %d)) msgpatternpos isinstancestrcountlinenorfindcolnosuper__init__)selfrr r newline) __class__%/usr/lib64/python3.6/sre_constants.pyr#s   zerror.__init__)NN)__name__ __module__ __qualname____doc__r __classcell__rr)rrrs rcs(eZdZfddZddZeZZS)_NamedIntConstantcstt|j||}||_|S)N)rr__new__name)clsvaluerr)rrrr7sz_NamedIntConstant.__new__cCs|jS)N)r)rrrr__str__<sz_NamedIntConstant.__str__)rrrrr"__repr__rrr)rrr6s rrcCs8|jj}ddt|D}tjdd|D|S)NcSsg|]\}}t||qSr)r).0irrrr Esz_makecodes..cSsi|] }||jqSr)r)r$itemrrr Fsz_makecodes..)stripsplit enumerateglobalsupdate)namesitemsrrr _makecodesCs r0a FAILURE SUCCESS ANY ANY_ALL ASSERT ASSERT_NOT AT BRANCH CALL CATEGORY CHARSET BIGCHARSET GROUPREF GROUPREF_EXISTS GROUPREF_IGNORE IN IN_IGNORE INFO JUMP LITERAL LITERAL_IGNORE MARK MAX_UNTIL MIN_UNTIL NOT_LITERAL NOT_LITERAL_IGNORE NEGATE RANGE REPEAT REPEAT_ONE SUBPATTERN MIN_REPEAT_ONE RANGE_IGNORE MIN_REPEAT MAX_REPEAT Nz AT_BEGINNING AT_BEGINNING_LINE AT_BEGINNING_STRING AT_BOUNDARY AT_NON_BOUNDARY AT_END AT_END_LINE AT_END_STRING AT_LOC_BOUNDARY AT_LOC_NON_BOUNDARY AT_UNI_BOUNDARY AT_UNI_NON_BOUNDARY a CATEGORY_DIGIT CATEGORY_NOT_DIGIT CATEGORY_SPACE CATEGORY_NOT_SPACE CATEGORY_WORD CATEGORY_NOT_WORD CATEGORY_LINEBREAK CATEGORY_NOT_LINEBREAK CATEGORY_LOC_WORD CATEGORY_LOC_NOT_WORD CATEGORY_UNI_DIGIT CATEGORY_UNI_NOT_DIGIT CATEGORY_UNI_SPACE CATEGORY_UNI_NOT_SPACE CATEGORY_UNI_WORD CATEGORY_UNI_NOT_WORD CATEGORY_UNI_LINEBREAK CATEGORY_UNI_NOT_LINEBREAK r @__main__cCs.t|}x |D]}|jd|||fqWdS)Nz#define %s_%s %d )sortedwrite)fdprefixr/r'rrrdumps r?zsre_constants.hwao/* * Secret Labs' Regular Expression Engine * * regular expression matching engine * * NOTE: This file is generated by sre_constants.py. If you need * to change anything in here, edit sre_constants.py and run it. * * Copyright (c) 1997-2001 by Secret Labs AB. All rights reserved. * * See the _sre.c file for information on usage and redistribution. */ z#define SRE_MAGIC %d ZSRE_OPZSREz#define SRE_FLAG_TEMPLATE %d z#define SRE_FLAG_IGNORECASE %d z#define SRE_FLAG_LOCALE %d z#define SRE_FLAG_MULTILINE %d z#define SRE_FLAG_DOTALL %d z#define SRE_FLAG_UNICODE %d z#define SRE_FLAG_VERBOSE %d z#define SRE_FLAG_DEBUG %d z#define SRE_FLAG_ASCII %d z#define SRE_INFO_PREFIX %d z#define SRE_INFO_LITERAL %d z#define SRE_INFO_CHARSET %d done)KrMAGIC_srerr Exceptionrintrr0OPCODESATCODESCHCODESGROUPREFZGROUPREF_IGNOREIN IN_IGNORELITERALZLITERAL_IGNORE NOT_LITERALZNOT_LITERAL_IGNORERANGE RANGE_IGNORE OP_IGNORE AT_BEGINNINGZAT_BEGINNING_LINEAT_ENDZ AT_END_LINE AT_MULTILINEZ AT_BOUNDARYZAT_LOC_BOUNDARYZAT_NON_BOUNDARYZAT_LOC_NON_BOUNDARY AT_LOCALEZAT_UNI_BOUNDARYZAT_UNI_NON_BOUNDARY AT_UNICODEZCATEGORY_DIGITZCATEGORY_NOT_DIGITZCATEGORY_SPACEZCATEGORY_NOT_SPACEZ CATEGORY_WORDZCATEGORY_LOC_WORDZCATEGORY_NOT_WORDZCATEGORY_LOC_NOT_WORDZCATEGORY_LINEBREAKZCATEGORY_NOT_LINEBREAK CH_LOCALEZCATEGORY_UNI_DIGITZCATEGORY_UNI_NOT_DIGITZCATEGORY_UNI_SPACEZCATEGORY_UNI_NOT_SPACEZCATEGORY_UNI_WORDZCATEGORY_UNI_NOT_WORDZCATEGORY_UNI_LINEBREAKZCATEGORY_UNI_NOT_LINEBREAK CH_UNICODESRE_FLAG_TEMPLATESRE_FLAG_IGNORECASESRE_FLAG_LOCALESRE_FLAG_MULTILINESRE_FLAG_DOTALLSRE_FLAG_UNICODESRE_FLAG_VERBOSESRE_FLAG_DEBUGSRE_FLAG_ASCIISRE_INFO_PREFIXSRE_INFO_LITERALSRE_INFO_CHARSETrr?openr<r;printrrrr s