diff options
Diffstat (limited to 'regalone.h')
| -rw-r--r-- | regalone.h | 36 |
1 files changed, 12 insertions, 24 deletions
@@ -2,22 +2,18 @@ #include <stddef.h> #include <stdio.h> #include <stdlib.h> +#include <stdint.h> #include <string.h> #ifndef REGEX_STANDALONE # define REGEX_STANDALONE #endif -#ifdef REGEX_WCHAR -# include <wctype.h> -# include <wchar.h> - typedef wchar_t chr; - typedef chr Tcl_UniChar; -#else -# include <ctype.h> - typedef unsigned char chr; - typedef wchar_t Tcl_UniChar; -#endif +#include <wctype.h> +#include <ctype.h> +// FIXME: Should better be a signed char? +typedef unsigned char chr; +//typedef wchar_t Tcl_UniChar; /* * In The standalone version we are more concerned with performance, @@ -34,7 +30,12 @@ #define ckrealloc(p,n) realloc(p,n) #define ckfree(p) free(p) -#ifdef REGEX_WCHAR +// FIXME: Perhaps get rid of these references completely. +#define Tcl_DStringInit(ds) do (void)(ds); while (0) +#define Tcl_UniCharToUtfDString(s,l,ds) ((char *)(s)) +#define Tcl_DStringFree(ds) do (void)(ds); while (0) + +#ifdef REGEX_UTF8 # define Tcl_UniCharToLower(c) towlower(c) # define Tcl_UniCharToUpper(c) towupper(c) # define Tcl_UniCharToTitle(c) towupper(c) @@ -43,9 +44,6 @@ # define Tcl_UniCharIsDigit(c) iswdigit(c) # define Tcl_UniCharIsSpace(c) iswspace(c) #else -# define Tcl_DStringInit(ds) -# define Tcl_UniCharToUtfDString(s,l,ds) (s) -# define Tcl_DStringFree(ds) # define Tcl_UniCharToLower(c) tolower(c) # define Tcl_UniCharToUpper(c) toupper(c) # define Tcl_UniCharToTitle(c) toupper(c) @@ -238,13 +236,3 @@ typedef struct Tcl_DString { #else # define EXTERN extern TCL_STORAGE_CLASS #endif - - -#ifdef REGEX_WCHAR -EXTERN void Tcl_DStringFree (Tcl_DString * dsPtr); -EXTERN void Tcl_DStringInit (Tcl_DString * dsPtr); -EXTERN char * Tcl_UniCharToUtfDString (CONST Tcl_UniChar * uniStr, - int uniLength, Tcl_DString * dsPtr); -EXTERN void Tcl_DStringSetLength (Tcl_DString * dsPtr, - int length); -#endif /* REGEX_WCHAR */ |
