aboutsummaryrefslogtreecommitdiff
path: root/jim.h
diff options
context:
space:
mode:
authorantirez <antirez>2005-03-03 13:10:57 +0000
committerantirez <antirez>2005-03-03 13:10:57 +0000
commite71bd29227f928144195f9d5d154f2a3bbf48277 (patch)
treea080695aa85f4938246fdd11ca5243634f755bbf /jim.h
parente2f0a7ee29687da26879994510366f49e3f66339 (diff)
downloadjimtcl-e71bd29227f928144195f9d5d154f2a3bbf48277.zip
jimtcl-e71bd29227f928144195f9d5d154f2a3bbf48277.tar.gz
jimtcl-e71bd29227f928144195f9d5d154f2a3bbf48277.tar.bz2
changes to the reference system. Now references string rep
includes a 'tag' that makes interactive usage and debugging simpler.
Diffstat (limited to 'jim.h')
-rw-r--r--jim.h5
1 files changed, 4 insertions, 1 deletions
diff --git a/jim.h b/jim.h
index e857f10..a10932a 100644
--- a/jim.h
+++ b/jim.h
@@ -443,9 +443,12 @@ typedef struct Jim_Interp {
} while(0)
/* Reference structure. The interpreter pointer is held within privdata member in HashTable */
+#define JIM_REFERENCE_TAGLEN 7 /* The tag is fixed-length, because the reference
+ string representation must be fixed length. */
typedef struct Jim_Reference {
Jim_Obj *objPtr;
Jim_Obj *finalizerCmdNamePtr;
+ char tag[JIM_REFERENCE_TAGLEN+1];
} Jim_Reference;
/* -----------------------------------------------------------------------------
@@ -550,7 +553,7 @@ JIM_STATIC int JIM_API(Jim_CompareStringImmediate) (Jim_Interp *interp,
/* reference object */
JIM_STATIC Jim_Obj * JIM_API(Jim_NewReference) (Jim_Interp *interp,
- Jim_Obj *objPtr, Jim_Obj *cmdNamePtr);
+ Jim_Obj *objPtr, Jim_Obj *tagPtr, Jim_Obj *cmdNamePtr);
JIM_STATIC Jim_Reference * JIM_API(Jim_GetReference) (Jim_Interp *interp,
Jim_Obj *objPtr);