towards 1.6b1
This commit is contained in:
parent
3de16f3db4
commit
102f3ad676
|
@ -14,6 +14,9 @@
|
|||
|
||||
#include "sre_constants.h"
|
||||
|
||||
/* size of a code word (must be unsigned short or larger) */
|
||||
#define SRE_CODE unsigned short
|
||||
|
||||
typedef struct {
|
||||
PyObject_HEAD
|
||||
PyObject* code; /* link to the code string object */
|
||||
|
@ -35,6 +38,14 @@ typedef struct {
|
|||
int mark[2];
|
||||
} MatchObject;
|
||||
|
||||
typedef unsigned int (*SRE_TOLOWER_HOOK)(unsigned int ch);
|
||||
|
||||
typedef struct {
|
||||
/* stack elements */
|
||||
SRE_CODE* pattern;
|
||||
void* ptr;
|
||||
} SRE_STACK;
|
||||
|
||||
typedef struct {
|
||||
/* string pointers */
|
||||
void* ptr; /* current position (also end of current slice) */
|
||||
|
@ -44,15 +55,18 @@ typedef struct {
|
|||
/* character size */
|
||||
int charsize;
|
||||
/* registers */
|
||||
int marks;
|
||||
int lastmark;
|
||||
void* mark[64]; /* FIXME: <fl> should be dynamically allocated! */
|
||||
/* backtracking stack */
|
||||
void** stack;
|
||||
SRE_STACK* stack;
|
||||
int stacksize;
|
||||
int stackbase;
|
||||
/* hooks */
|
||||
SRE_TOLOWER_HOOK tolower;
|
||||
} SRE_STATE;
|
||||
|
||||
typedef struct {
|
||||
/* search helper */
|
||||
PyObject_HEAD
|
||||
PyObject* pattern;
|
||||
PyObject* string;
|
||||
|
|
|
@ -11,20 +11,19 @@
|
|||
#define SRE_OP_GROUP_IGNORE 9
|
||||
#define SRE_OP_IN 10
|
||||
#define SRE_OP_IN_IGNORE 11
|
||||
#define SRE_OP_JUMP 12
|
||||
#define SRE_OP_LITERAL 13
|
||||
#define SRE_OP_LITERAL_IGNORE 14
|
||||
#define SRE_OP_MARK 15
|
||||
#define SRE_OP_MAX_REPEAT 16
|
||||
#define SRE_OP_MAX_UNTIL 17
|
||||
#define SRE_OP_INFO 12
|
||||
#define SRE_OP_JUMP 13
|
||||
#define SRE_OP_LITERAL 14
|
||||
#define SRE_OP_LITERAL_IGNORE 15
|
||||
#define SRE_OP_MARK 16
|
||||
#define SRE_OP_MAX_REPEAT 17
|
||||
#define SRE_OP_MAX_REPEAT_ONE 18
|
||||
#define SRE_OP_MIN_REPEAT 19
|
||||
#define SRE_OP_MIN_UNTIL 20
|
||||
#define SRE_OP_NOT_LITERAL 21
|
||||
#define SRE_OP_NOT_LITERAL_IGNORE 22
|
||||
#define SRE_OP_NEGATE 23
|
||||
#define SRE_OP_RANGE 24
|
||||
#define SRE_OP_REPEAT 25
|
||||
#define SRE_OP_NOT_LITERAL 20
|
||||
#define SRE_OP_NOT_LITERAL_IGNORE 21
|
||||
#define SRE_OP_NEGATE 22
|
||||
#define SRE_OP_RANGE 23
|
||||
#define SRE_OP_REPEAT 24
|
||||
#define SRE_AT_BEGINNING 0
|
||||
#define SRE_AT_BEGINNING_LINE 1
|
||||
#define SRE_AT_BOUNDARY 2
|
||||
|
@ -39,11 +38,20 @@
|
|||
#define SRE_CATEGORY_NOT_WORD 5
|
||||
#define SRE_CATEGORY_LINEBREAK 6
|
||||
#define SRE_CATEGORY_NOT_LINEBREAK 7
|
||||
#define SRE_CATEGORY_LOC_DIGIT 8
|
||||
#define SRE_CATEGORY_LOC_NOT_DIGIT 9
|
||||
#define SRE_CATEGORY_LOC_SPACE 10
|
||||
#define SRE_CATEGORY_LOC_NOT_SPACE 11
|
||||
#define SRE_CATEGORY_LOC_WORD 12
|
||||
#define SRE_CATEGORY_LOC_NOT_WORD 13
|
||||
#define SRE_CATEGORY_LOC_LINEBREAK 14
|
||||
#define SRE_CATEGORY_LOC_NOT_LINEBREAK 15
|
||||
#define SRE_CATEGORY_LOC_WORD 8
|
||||
#define SRE_CATEGORY_LOC_NOT_WORD 9
|
||||
#define SRE_CATEGORY_UNI_DIGIT 10
|
||||
#define SRE_CATEGORY_UNI_NOT_DIGIT 11
|
||||
#define SRE_CATEGORY_UNI_SPACE 12
|
||||
#define SRE_CATEGORY_UNI_NOT_SPACE 13
|
||||
#define SRE_CATEGORY_UNI_WORD 14
|
||||
#define SRE_CATEGORY_UNI_NOT_WORD 15
|
||||
#define SRE_CATEGORY_UNI_LINEBREAK 16
|
||||
#define SRE_CATEGORY_UNI_NOT_LINEBREAK 17
|
||||
#define SRE_FLAG_TEMPLATE 1
|
||||
#define SRE_FLAG_IGNORECASE 2
|
||||
#define SRE_FLAG_LOCALE 4
|
||||
#define SRE_FLAG_MULTILINE 8
|
||||
#define SRE_FLAG_DOTALL 16
|
||||
#define SRE_FLAG_UNICODE 32
|
||||
#define SRE_FLAG_VERBOSE 64
|
||||
|
|
Loading…
Reference in New Issue