bg" ddlmZddlmZmZmZddlmZddlm Z m Z ddl m Z ddl mZdd Zeed ed ZddZdddZeejeeedS)) annotations)context inference_tipnodes)register_module_extender)_extract_single_nodeparse) PY39_PLUS)AstroidManagerreturn nodes.Modulec tdS)zThe RegexFlag enum exposes all its entries by updating globals(). We hard-code the flags for now. # pylint: disable-next=line-too-long See https://github.com/mrabarnett/mrab-regex/blob/2022.10.31/regex_3/regex.py#L200 aA A = ASCII = 0x80 # Assume ASCII locale. B = BESTMATCH = 0x1000 # Best fuzzy match. D = DEBUG = 0x200 # Print parsed pattern. E = ENHANCEMATCH = 0x8000 # Attempt to improve the fit after finding the first # fuzzy match. F = FULLCASE = 0x4000 # Unicode full case-folding. I = IGNORECASE = 0x2 # Ignore case. L = LOCALE = 0x4 # Assume current 8-bit locale. M = MULTILINE = 0x8 # Make anchors look for newline. P = POSIX = 0x10000 # POSIX-style matching (leftmost longest). R = REVERSE = 0x400 # Search backwards. S = DOTALL = 0x10 # Make dot match newline. U = UNICODE = 0x20 # Assume Unicode locale. V0 = VERSION0 = 0x2000 # Old legacy behaviour. DEFAULT_VERSION = V0 V1 = VERSION1 = 0x100 # New enhanced behaviour. W = WORD = 0x800 # Default Unicode word breaks. X = VERBOSE = 0x40 # Ignore whitespace and comments. T = TEMPLATE = 0x1 # Template (present because re module has it). )r j/builddir/build/BUILD/cloudlinux-venv-1.0.7/venv/lib/python3.11/site-packages/astroid/brain/brain_regex.py_regex_transformrs    rregexz? @classmethod def __class_getitem__(cls, item): return cls node nodes.Callboolc|jdkot|jtjo|jjdko~t|jtjo_t|jj dkoBt|jj dtj o|jj djdvS)zCheck for regex.Pattern or regex.Match call in stdlib. Match these patterns from stdlib/re.py ```py Pattern = type(...) Match = type(...) ``` z regex.regextyper>MatchPattern) rootname isinstancefuncrNameparentAssignlentargets AssignName)rs r_looks_like_pattern_or_matchr&8s M) @ ty%* - - @ INf $ @ t{EL 1 1 @  # $ $ )  @ t{*1-u/? @ @  @ K  " '+? ?rNctxcontext.InferenceContext | Nonectj|jjdj|j|j|j}trtt}|g|j d<t|gS)z\Infer regex.Pattern and regex.Match as classes. For PY39+ add `__class_getitem__`. r)rlineno col_offsetr!__class_getitem__) rClassDefr!r$rr*r+r rCLASS_GETITEM_TEMPLATElocalsiter)rr' class_def func_to_adds rinfer_pattern_matchr3Lsq  [  # ({?{ I >*+ABB 1< ,-   r)r r )rrr r)N)rrr'r() __future__rastroidrrrastroid.brain.helpersrastroid.builderrr astroid.constr astroid.managerr rr.r&r3register_transformCallrrrr<s0 #"""""1111111111::::::77777777######******@))74DEEE("## J 1224Pr