summaryrefslogtreecommitdiffstats
path: root/generic/regguts.h
diff options
context:
space:
mode:
authordkf <donal.k.fellows@manchester.ac.uk>2007-11-14 11:04:58 (GMT)
committerdkf <donal.k.fellows@manchester.ac.uk>2007-11-14 11:04:58 (GMT)
commit45b2a969f63ab7f6184c8acaec8bb3d525650090 (patch)
tree145f0b7237a0fa87bff299c233682cca06b5cdd5 /generic/regguts.h
parent32e51a96573d4ab8a91f7e5484b7ed780b875ae7 (diff)
downloadtcl-45b2a969f63ab7f6184c8acaec8bb3d525650090.zip
tcl-45b2a969f63ab7f6184c8acaec8bb3d525650090.tar.gz
tcl-45b2a969f63ab7f6184c8acaec8bb3d525650090.tar.bz2
Eliminate multi-char collating element code completely. Simplifies the code
quite a bit. If people still want the full code, it will remain on the 8.4 branch. [Bug 1831425]
Diffstat (limited to 'generic/regguts.h')
-rw-r--r--generic/regguts.h38
1 files changed, 14 insertions, 24 deletions
diff --git a/generic/regguts.h b/generic/regguts.h
index bc1d7a2..cbf6615 100644
--- a/generic/regguts.h
+++ b/generic/regguts.h
@@ -60,24 +60,24 @@
/* voids */
#ifndef VOID
-#define VOID void /* for function return values */
+#define VOID void /* for function return values */
#endif
#ifndef DISCARD
-#define DISCARD void /* for throwing values away */
+#define DISCARD void /* for throwing values away */
#endif
#ifndef PVOID
-#define PVOID void * /* generic pointer */
+#define PVOID void * /* generic pointer */
#endif
#ifndef VS
-#define VS(x) ((void*)(x)) /* cast something to generic ptr */
+#define VS(x) ((void*)(x)) /* cast something to generic ptr */
#endif
#ifndef NOPARMS
-#define NOPARMS void /* for empty parm lists */
+#define NOPARMS void /* for empty parm lists */
#endif
/* const */
#ifndef CONST
-#define CONST const /* for old compilers, might be empty */
+#define CONST const /* for old compilers, might be empty */
#endif
/* function-pointer declarator */
@@ -105,7 +105,7 @@
#include <limits.h>
#endif
#ifndef _POSIX2_RE_DUP_MAX
-#define _POSIX2_RE_DUP_MAX 255 /* normally from <limits.h> */
+#define _POSIX2_RE_DUP_MAX 255 /* normally from <limits.h> */
#endif
/*
@@ -189,7 +189,7 @@ union tree {
#define tcolor colors.ccolor
#define tptr ptrs.pptr
-/* internal per-color structure for the color machinery */
+/* Internal per-color descriptor structure for the color machinery */
struct colordesc {
uchr nchrs; /* number of chars of this color */
color sub; /* open subcolor (if any); free chain ptr */
@@ -235,9 +235,9 @@ struct colormap {
/*
* Interface definitions for locale-interface functions in locale.c.
- * Multi-character collating elements (MCCEs) cause most of the trouble.
*/
+/* Representation of a set of characters. */
struct cvec {
int nchrs; /* number of chrs */
int chrspace; /* number of chrs possible */
@@ -245,22 +245,11 @@ struct cvec {
int nranges; /* number of ranges (chr pairs) */
int rangespace; /* number of chrs possible */
chr *ranges; /* pointer to vector of chr pairs */
-#ifdef REGEXP_MCCE_ENABLED
- int nmcces; /* number of MCCEs */
- int mccespace; /* number of MCCEs possible */
- int nmccechrs; /* number of chrs used for MCCEs */
- chr *mcces[1]; /* pointers to 0-terminated MCCEs */
- /* and both batches of chrs are on the end */
-#endif
};
-#ifdef REGEXP_MCCE_ENABLED
-/* caution: this value cannot be changed easily */
-#define MAXMCCE 2 /* length of longest MCCE */
-#endif
-
/*
- * definitions for NFA internal representation
+ * definitions for non-deterministic finite autmaton (NFA) internal
+ * representation
*
* Having a "from" pointer within each arc may seem redundant, but it saves a
* lot of hassle.
@@ -288,7 +277,7 @@ struct arcbatch { /* for bulk allocation of arcs */
struct state {
int no;
-# define FREESTATE (-1)
+#define FREESTATE (-1)
char flag; /* marks special states */
int nins; /* number of inarcs */
struct arc *ins; /* chain of inarcs */
@@ -405,7 +394,8 @@ struct guts {
};
/*
- * Magic for allocating a variable workspace.
+ * Magic for allocating a variable workspace. This default version is
+ * stack-hungry.
*/
#ifndef AllocVars