summaryrefslogtreecommitdiffstats
path: root/Modules/sre.h
diff options
context:
space:
mode:
authorGuido van Rossum <guido@python.org>2000-03-31 14:59:30 (GMT)
committerGuido van Rossum <guido@python.org>2000-03-31 14:59:30 (GMT)
commitb700df9824a768893fb83dec41779ac89035313e (patch)
tree2d871f39d80632d370b0b671a46b1d133a71c38a /Modules/sre.h
parent7627c0de6968471996ce05aab200115d56efa1d5 (diff)
downloadcpython-b700df9824a768893fb83dec41779ac89035313e.zip
cpython-b700df9824a768893fb83dec41779ac89035313e.tar.gz
cpython-b700df9824a768893fb83dec41779ac89035313e.tar.bz2
Adding Fredrik Lundh's _sre.c module and its header files.
NOTE: THIS IS VERY ROUGH ALPHA CODE!
Diffstat (limited to 'Modules/sre.h')
-rw-r--r--Modules/sre.h38
1 files changed, 38 insertions, 0 deletions
diff --git a/Modules/sre.h b/Modules/sre.h
new file mode 100644
index 0000000..2936b05
--- /dev/null
+++ b/Modules/sre.h
@@ -0,0 +1,38 @@
+/*
+ * Secret Labs' Regular Expression Engine
+ * $Id$
+ *
+ * simple regular expression matching engine
+ *
+ * Copyright (c) 1997-2000 by Secret Labs AB. All rights reserved.
+ *
+ * See the _sre.c file for information on usage and redistribution.
+ */
+
+#ifndef SRE_INCLUDED
+#define SRE_INCLUDED
+
+#include "sre_constants.h"
+
+/* Python objects */
+
+typedef struct {
+ PyObject_HEAD
+ PyObject* code; /* link to the code string object */
+ PyObject* pattern; /* link to the pattern source (or None) */
+ int groups;
+ PyObject* groupindex;
+} PatternObject;
+
+#define PatternObject_GetCode(o) ((void*) PyString_AS_STRING((o)->code))
+
+typedef struct {
+ PyObject_HEAD
+ PyObject* string; /* link to the target string */
+ PatternObject* pattern; /* link to the regex (pattern) object */
+ int groups; /* number of groups (start/end marks) */
+ int mark[2];
+} MatchObject;
+
+#endif
+