blob: c8ccb32d21de6ce3669d5cf67f0352d10a92fc0d [file] [log] [blame]
Fredrik Lundh43b3b492000-06-30 10:41:31 +00001/*
2 * Secret Labs' Regular Expression Engine
3 *
4 * regular expression matching engine
5 *
6 * NOTE: This file is generated by sre_constants.py. If you need
7 * to change anything in here, edit sre_constants.py and run it.
8 *
Fredrik Lundh770617b2001-01-14 15:06:11 +00009 * Copyright (c) 1997-2001 by Secret Labs AB. All rights reserved.
Fredrik Lundh43b3b492000-06-30 10:41:31 +000010 *
11 * See the _sre.c file for information on usage and redistribution.
12 */
13
Serhiy Storchaka3557b052017-10-24 23:31:42 +030014#define SRE_MAGIC 20171005
Guido van Rossumb700df92000-03-31 14:59:30 +000015#define SRE_OP_FAILURE 0
16#define SRE_OP_SUCCESS 1
17#define SRE_OP_ANY 2
Fredrik Lundhe1869832000-08-01 22:47:49 +000018#define SRE_OP_ANY_ALL 3
19#define SRE_OP_ASSERT 4
20#define SRE_OP_ASSERT_NOT 5
21#define SRE_OP_AT 6
22#define SRE_OP_BRANCH 7
23#define SRE_OP_CALL 8
24#define SRE_OP_CATEGORY 9
25#define SRE_OP_CHARSET 10
Fredrik Lundh19af43d2001-07-02 16:58:38 +000026#define SRE_OP_BIGCHARSET 11
27#define SRE_OP_GROUPREF 12
Gustavo Niemeyerad3fc442003-10-17 22:13:16 +000028#define SRE_OP_GROUPREF_EXISTS 13
Serhiy Storchaka3557b052017-10-24 23:31:42 +030029#define SRE_OP_IN 14
30#define SRE_OP_INFO 15
31#define SRE_OP_JUMP 16
32#define SRE_OP_LITERAL 17
33#define SRE_OP_MARK 18
34#define SRE_OP_MAX_UNTIL 19
35#define SRE_OP_MIN_UNTIL 20
36#define SRE_OP_NOT_LITERAL 21
37#define SRE_OP_NEGATE 22
38#define SRE_OP_RANGE 23
39#define SRE_OP_REPEAT 24
40#define SRE_OP_REPEAT_ONE 25
41#define SRE_OP_SUBPATTERN 26
42#define SRE_OP_MIN_REPEAT_ONE 27
43#define SRE_OP_GROUPREF_IGNORE 28
44#define SRE_OP_IN_IGNORE 29
45#define SRE_OP_LITERAL_IGNORE 30
46#define SRE_OP_NOT_LITERAL_IGNORE 31
47#define SRE_OP_GROUPREF_LOC_IGNORE 32
48#define SRE_OP_IN_LOC_IGNORE 33
49#define SRE_OP_LITERAL_LOC_IGNORE 34
50#define SRE_OP_NOT_LITERAL_LOC_IGNORE 35
51#define SRE_OP_GROUPREF_UNI_IGNORE 36
52#define SRE_OP_IN_UNI_IGNORE 37
53#define SRE_OP_LITERAL_UNI_IGNORE 38
54#define SRE_OP_NOT_LITERAL_UNI_IGNORE 39
55#define SRE_OP_RANGE_UNI_IGNORE 40
Jeremy Hyltonb1aa1952000-06-01 17:39:12 +000056#define SRE_AT_BEGINNING 0
57#define SRE_AT_BEGINNING_LINE 1
Fredrik Lundh770617b2001-01-14 15:06:11 +000058#define SRE_AT_BEGINNING_STRING 2
59#define SRE_AT_BOUNDARY 3
60#define SRE_AT_NON_BOUNDARY 4
61#define SRE_AT_END 5
62#define SRE_AT_END_LINE 6
63#define SRE_AT_END_STRING 7
Fredrik Lundhb25e1ad2001-03-22 15:50:10 +000064#define SRE_AT_LOC_BOUNDARY 8
65#define SRE_AT_LOC_NON_BOUNDARY 9
66#define SRE_AT_UNI_BOUNDARY 10
67#define SRE_AT_UNI_NON_BOUNDARY 11
Jeremy Hyltonb1aa1952000-06-01 17:39:12 +000068#define SRE_CATEGORY_DIGIT 0
69#define SRE_CATEGORY_NOT_DIGIT 1
70#define SRE_CATEGORY_SPACE 2
71#define SRE_CATEGORY_NOT_SPACE 3
72#define SRE_CATEGORY_WORD 4
73#define SRE_CATEGORY_NOT_WORD 5
74#define SRE_CATEGORY_LINEBREAK 6
75#define SRE_CATEGORY_NOT_LINEBREAK 7
Fredrik Lundh102f3ad2000-06-29 08:55:54 +000076#define SRE_CATEGORY_LOC_WORD 8
77#define SRE_CATEGORY_LOC_NOT_WORD 9
78#define SRE_CATEGORY_UNI_DIGIT 10
79#define SRE_CATEGORY_UNI_NOT_DIGIT 11
80#define SRE_CATEGORY_UNI_SPACE 12
81#define SRE_CATEGORY_UNI_NOT_SPACE 13
82#define SRE_CATEGORY_UNI_WORD 14
83#define SRE_CATEGORY_UNI_NOT_WORD 15
84#define SRE_CATEGORY_UNI_LINEBREAK 16
85#define SRE_CATEGORY_UNI_NOT_LINEBREAK 17
86#define SRE_FLAG_TEMPLATE 1
87#define SRE_FLAG_IGNORECASE 2
88#define SRE_FLAG_LOCALE 4
89#define SRE_FLAG_MULTILINE 8
90#define SRE_FLAG_DOTALL 16
91#define SRE_FLAG_UNICODE 32
92#define SRE_FLAG_VERBOSE 64
Serhiy Storchaka5c24d0e2013-11-23 22:42:43 +020093#define SRE_FLAG_DEBUG 128
94#define SRE_FLAG_ASCII 256
Fredrik Lundh3562f112000-07-02 12:00:07 +000095#define SRE_INFO_PREFIX 1
96#define SRE_INFO_LITERAL 2
97#define SRE_INFO_CHARSET 4