From 11b192af0995cd74f683475146d480beba2a9f37 Mon Sep 17 00:00:00 2001 From: Dave Beazley Date: Sun, 19 Mar 2000 04:40:04 +0000 Subject: [PATCH] Minor fixes needed to support pointer.i library. git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@348 626c5289-ae23-0410-ae9c-e8d60b6d4f22 --- Lib/tcl/swigtcl8.swg | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) diff --git a/Lib/tcl/swigtcl8.swg b/Lib/tcl/swigtcl8.swg index 613db31ec..10f38de2b 100644 --- a/Lib/tcl/swigtcl8.swg +++ b/Lib/tcl/swigtcl8.swg @@ -55,6 +55,7 @@ SWIGEXPORT(int) SWIG_ConvertPtr(Tcl_Interp *, Tcl_Obj *, void **, _swig_type_inf SWIGEXPORT(void) SWIG_MakePtr(char *, void *, _swig_type_info *); SWIGEXPORT(Tcl_Obj *) SWIG_NewPointerObj(void *, _swig_type_info *); SWIGEXPORT(int) SWIG_GetArgs(Tcl_Interp *, int, Tcl_Obj *CONST [], const char *, ...); +SWIGEXPORT(char *) SWIG_PointerTypeFromString(char *c); #else static _swig_type_info *swig_types = 0; @@ -163,6 +164,7 @@ SWIG_ConvertPtrFromString(Tcl_Interp *interp, char *c, void **ptr, _swig_type_in return TCL_OK; } + /* Convert a pointer value */ SWIGSTATICRUNTIME(int) SWIG_ConvertPtr(Tcl_Interp *interp, Tcl_Obj *oc, void **ptr, _swig_type_info *ty) @@ -170,6 +172,24 @@ SWIG_ConvertPtr(Tcl_Interp *interp, Tcl_Obj *oc, void **ptr, _swig_type_info *ty return SWIG_ConvertPtrFromString(interp, Tcl_GetStringFromObj(oc,NULL), ptr, ty); } + +/* Convert a pointer value */ +SWIGSTATICRUNTIME(char *) +SWIG_PointerTypeFromString(char *c) { + char d; + /* Pointer values must start with leading underscore */ + if (*c != '_') { + return 0; + } + c++; + /* Extract hex value from pointer */ + while (d = *c) { + if (!(((d >= '0') && (d <= '9')) || ((d >= 'a') && (d <= 'f')))) break; + c++; + } + return c; +} + /* Take a pointer and convert it to a string */ SWIGSTATICRUNTIME(void) SWIG_MakePtr(char *c, void *ptr, _swig_type_info *ty) {