summaryrefslogtreecommitdiffstats
path: root/generic/tclDecls.h
diff options
context:
space:
mode:
authorjan.nijtmans <nijtmans@users.sourceforge.net>2022-04-01 10:29:45 (GMT)
committerjan.nijtmans <nijtmans@users.sourceforge.net>2022-04-01 10:29:45 (GMT)
commitd0fec7532c33f0b3da8057e2e0fda10524f22905 (patch)
tree0a27ba932606ffe075724951f8d3aa24745f6dd7 /generic/tclDecls.h
parentb1a8dc460f2e7f8a7ff436f52729f729ead3b92d (diff)
downloadtcl-d0fec7532c33f0b3da8057e2e0fda10524f22905.zip
tcl-d0fec7532c33f0b3da8057e2e0fda10524f22905.tar.gz
tcl-d0fec7532c33f0b3da8057e2e0fda10524f22905.tar.bz2
Add UTF-16 versions of Tcl_GetCharLength/Tcl_GetRange/Tcl_GetUniChar to the stub table. Should have been part of TIP #542. Needed for Tk's "glyph_indexing_2" branch
Diffstat (limited to 'generic/tclDecls.h')
-rw-r--r--generic/tclDecls.h49
1 files changed, 34 insertions, 15 deletions
diff --git a/generic/tclDecls.h b/generic/tclDecls.h
index 3e2b8cb..1345c6c 100644
--- a/generic/tclDecls.h
+++ b/generic/tclDecls.h
@@ -996,12 +996,12 @@ EXTERN Tcl_Obj * Tcl_NewUnicodeObj(const Tcl_UniChar *unicode,
EXTERN void Tcl_SetUnicodeObj(Tcl_Obj *objPtr,
const Tcl_UniChar *unicode, size_t numChars);
/* 380 */
-EXTERN size_t Tcl_GetCharLength(Tcl_Obj *objPtr);
+EXTERN size_t TclGetCharLength(Tcl_Obj *objPtr);
/* 381 */
-EXTERN int Tcl_GetUniChar(Tcl_Obj *objPtr, size_t index);
+EXTERN int TclGetUniChar(Tcl_Obj *objPtr, size_t index);
/* Slot 382 is reserved */
/* 383 */
-EXTERN Tcl_Obj * Tcl_GetRange(Tcl_Obj *objPtr, size_t first,
+EXTERN Tcl_Obj * TclGetRange(Tcl_Obj *objPtr, size_t first,
size_t last);
/* Slot 384 is reserved */
/* 385 */
@@ -1776,9 +1776,15 @@ EXTERN int Tcl_AsyncMarkFromSignal(Tcl_AsyncHandler async,
EXTERN size_t Tcl_UniCharLen(const int *uniStr);
/* 669 */
EXTERN size_t Tcl_NumUtfChars(const char *src, size_t length);
-/* Slot 670 is reserved */
+/* 670 */
+EXTERN size_t Tcl_GetCharLength(Tcl_Obj *objPtr);
/* 671 */
EXTERN const char * Tcl_UtfAtIndex(const char *src, size_t index);
+/* 672 */
+EXTERN Tcl_Obj * Tcl_GetRange(Tcl_Obj *objPtr, size_t first,
+ size_t last);
+/* 673 */
+EXTERN int Tcl_GetUniChar(Tcl_Obj *objPtr, size_t index);
typedef struct {
const struct TclPlatStubs *tclPlatStubs;
@@ -2170,10 +2176,10 @@ typedef struct TclStubs {
void (*tcl_RegExpGetInfo) (Tcl_RegExp regexp, Tcl_RegExpInfo *infoPtr); /* 377 */
Tcl_Obj * (*tcl_NewUnicodeObj) (const Tcl_UniChar *unicode, size_t numChars); /* 378 */
void (*tcl_SetUnicodeObj) (Tcl_Obj *objPtr, const Tcl_UniChar *unicode, size_t numChars); /* 379 */
- size_t (*tcl_GetCharLength) (Tcl_Obj *objPtr); /* 380 */
- int (*tcl_GetUniChar) (Tcl_Obj *objPtr, size_t index); /* 381 */
+ size_t (*tclGetCharLength) (Tcl_Obj *objPtr); /* 380 */
+ int (*tclGetUniChar) (Tcl_Obj *objPtr, size_t index); /* 381 */
void (*reserved382)(void);
- Tcl_Obj * (*tcl_GetRange) (Tcl_Obj *objPtr, size_t first, size_t last); /* 383 */
+ Tcl_Obj * (*tclGetRange) (Tcl_Obj *objPtr, size_t first, size_t last); /* 383 */
void (*reserved384)(void);
int (*tcl_RegExpMatchObj) (Tcl_Interp *interp, Tcl_Obj *textObj, Tcl_Obj *patternObj); /* 385 */
void (*tcl_SetNotifier) (const Tcl_NotifierProcs *notifierProcPtr); /* 386 */
@@ -2460,8 +2466,10 @@ typedef struct TclStubs {
void (*reserved667)(void);
size_t (*tcl_UniCharLen) (const int *uniStr); /* 668 */
size_t (*tcl_NumUtfChars) (const char *src, size_t length); /* 669 */
- void (*reserved670)(void);
+ size_t (*tcl_GetCharLength) (Tcl_Obj *objPtr); /* 670 */
const char * (*tcl_UtfAtIndex) (const char *src, size_t index); /* 671 */
+ Tcl_Obj * (*tcl_GetRange) (Tcl_Obj *objPtr, size_t first, size_t last); /* 672 */
+ int (*tcl_GetUniChar) (Tcl_Obj *objPtr, size_t index); /* 673 */
} TclStubs;
extern const TclStubs *tclStubsPtr;
@@ -3184,13 +3192,13 @@ extern const TclStubs *tclStubsPtr;
(tclStubsPtr->tcl_NewUnicodeObj) /* 378 */
#define Tcl_SetUnicodeObj \
(tclStubsPtr->tcl_SetUnicodeObj) /* 379 */
-#define Tcl_GetCharLength \
- (tclStubsPtr->tcl_GetCharLength) /* 380 */
-#define Tcl_GetUniChar \
- (tclStubsPtr->tcl_GetUniChar) /* 381 */
+#define TclGetCharLength \
+ (tclStubsPtr->tclGetCharLength) /* 380 */
+#define TclGetUniChar \
+ (tclStubsPtr->tclGetUniChar) /* 381 */
/* Slot 382 is reserved */
-#define Tcl_GetRange \
- (tclStubsPtr->tcl_GetRange) /* 383 */
+#define TclGetRange \
+ (tclStubsPtr->tclGetRange) /* 383 */
/* Slot 384 is reserved */
#define Tcl_RegExpMatchObj \
(tclStubsPtr->tcl_RegExpMatchObj) /* 385 */
@@ -3746,9 +3754,14 @@ extern const TclStubs *tclStubsPtr;
(tclStubsPtr->tcl_UniCharLen) /* 668 */
#define Tcl_NumUtfChars \
(tclStubsPtr->tcl_NumUtfChars) /* 669 */
-/* Slot 670 is reserved */
+#define Tcl_GetCharLength \
+ (tclStubsPtr->tcl_GetCharLength) /* 670 */
#define Tcl_UtfAtIndex \
(tclStubsPtr->tcl_UtfAtIndex) /* 671 */
+#define Tcl_GetRange \
+ (tclStubsPtr->tcl_GetRange) /* 672 */
+#define Tcl_GetUniChar \
+ (tclStubsPtr->tcl_GetUniChar) /* 673 */
#endif /* defined(USE_TCL_STUBS) */
@@ -3953,8 +3966,14 @@ extern const TclStubs *tclStubsPtr;
#if !defined(BUILD_tcl)
# undef Tcl_NumUtfChars
# define Tcl_NumUtfChars TclNumUtfChars
+# undef Tcl_GetCharLength
+# define Tcl_GetCharLength TclGetCharLength
# undef Tcl_UtfAtIndex
# define Tcl_UtfAtIndex TclUtfAtIndex
+# undef Tcl_GetRange
+# define Tcl_GetRange TclGetRange
+# undef Tcl_GetUniChar
+# define Tcl_GetUniChar TclGetUniChar
#endif
#endif
#if defined(USE_TCL_STUBS)