X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ian/git?p=chiark-tcl.git;a=blobdiff_plain;f=base%2Fenum.c;h=e40b51343b3564cf7d3708d5f0f93f0c927e0f1f;hp=e3fa041b6d621875909bb06c84a0e23011555785;hb=82f88c53ddb84e42c770c23feb9bb0ee18341188;hpb=5d466de467f28ae6f7125bef086d141a7734a4ce diff --git a/base/enum.c b/base/enum.c index e3fa041..e40b513 100644 --- a/base/enum.c +++ b/base/enum.c @@ -2,9 +2,7 @@ * */ -#include - -#include "hbytes.h" +#include "chiark-tcl-base.h" static void enum_nt_dup(Tcl_Obj *src, Tcl_Obj *dup) { dup->internalRep= src->internalRep; @@ -19,12 +17,12 @@ static int enum_nt_sfa(Tcl_Interp *ip, Tcl_Obj *o) { abort(); } -Tcl_ObjType enum_nearlytype = { +Tcl_ObjType cht_enum_nearlytype = { "enum-nearly", 0, enum_nt_dup, enum_nt_ustr, enum_nt_sfa }; -Tcl_ObjType enum1_nearlytype = { +Tcl_ObjType cht_enum1_nearlytype = { "enum1-nearly", 0, enum_nt_dup, enum_nt_ustr, enum_nt_sfa }; @@ -58,13 +56,13 @@ static void appres_enum(Tcl_Interp *ip, const void *p) { Tcl_AppendResult(ip, enum_str(p), (char*)0); } -const void *enum_lookup_cached_func(Tcl_Interp *ip, Tcl_Obj *o, +const void *cht_enum_lookup_cached_func(Tcl_Interp *ip, Tcl_Obj *o, const void *firstentry, size_t entrysize, const char *what) { const char *supplied, *found; const char *ep; - if (o->typePtr == &enum_nearlytype && + if (o->typePtr == &cht_enum_nearlytype && o->internalRep.twoPtrValue.ptr1 == firstentry) return o->internalRep.twoPtrValue.ptr2; @@ -74,8 +72,8 @@ const void *enum_lookup_cached_func(Tcl_Interp *ip, Tcl_Obj *o, ep += entrysize); if (found) { - objfreeir(o); - o->typePtr= &enum_nearlytype; + cht_objfreeir(o); + o->typePtr= &cht_enum_nearlytype; o->internalRep.twoPtrValue.ptr1= (void*)firstentry; o->internalRep.twoPtrValue.ptr2= (void*)ep; return ep; @@ -93,11 +91,11 @@ static void appres_enum1(Tcl_Interp *ip, const void *p) { Tcl_AppendResult(ip, buf, (char*)0); } -int enum1_lookup_cached_func(Tcl_Interp *ip, Tcl_Obj *o, +int cht_enum1_lookup_cached_func(Tcl_Interp *ip, Tcl_Obj *o, const char *opts, const char *what) { const char *supplied, *fp; - if (o->typePtr != &enum1_nearlytype || + if (o->typePtr != &cht_enum1_nearlytype || o->internalRep.twoPtrValue.ptr1 != opts) { supplied= Tcl_GetStringFromObj(o,0); assert(supplied); @@ -108,8 +106,8 @@ int enum1_lookup_cached_func(Tcl_Interp *ip, Tcl_Obj *o, return -1; } - objfreeir(o); - o->typePtr= &enum1_nearlytype; + cht_objfreeir(o); + o->typePtr= &cht_enum1_nearlytype; o->internalRep.twoPtrValue.ptr1= (void*)opts; o->internalRep.twoPtrValue.ptr2= (void*)fp; }