292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
|
TCL_OBJTYPE_V0
};
#define LocalSetInternalRep(objPtr, index, namePtr) \
do { \
Tcl_ObjInternalRep ir; \
Tcl_Obj *ptr = (namePtr); \
if (ptr) {Tcl_IncrRefCount(ptr);} \
ir.twoPtrValue.ptr1 = ptr; \
ir.twoPtrValue.ptr2 = INT2PTR(index); \
Tcl_StoreInternalRep((objPtr), &localVarNameType, &ir); \
} while (0)
#define LocalGetInternalRep(objPtr, index, name) \
do { \
|
>
|
>
|
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
|
TCL_OBJTYPE_V0
};
#define LocalSetInternalRep(objPtr, index, namePtr) \
do { \
Tcl_ObjInternalRep ir; \
Tcl_Obj *ptr = (namePtr); \
if (ptr) { \
Tcl_IncrRefCount(ptr); \
} \
ir.twoPtrValue.ptr1 = ptr; \
ir.twoPtrValue.ptr2 = INT2PTR(index); \
Tcl_StoreInternalRep((objPtr), &localVarNameType, &ir); \
} while (0)
#define LocalGetInternalRep(objPtr, index, name) \
do { \
|
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
|
};
#define ParsedSetInternalRep(objPtr, arrayPtr, elem) \
do { \
Tcl_ObjInternalRep ir; \
Tcl_Obj *ptr1 = (arrayPtr); \
Tcl_Obj *ptr2 = (elem); \
if (ptr1) {Tcl_IncrRefCount(ptr1);} \
if (ptr2) {Tcl_IncrRefCount(ptr2);} \
ir.twoPtrValue.ptr1 = ptr1; \
ir.twoPtrValue.ptr2 = ptr2; \
Tcl_StoreInternalRep((objPtr), &parsedVarNameType, &ir); \
} while (0)
#define ParsedGetInternalRep(objPtr, parsed, array, elem) \
do { \
|
>
|
>
>
|
>
|
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
|
};
#define ParsedSetInternalRep(objPtr, arrayPtr, elem) \
do { \
Tcl_ObjInternalRep ir; \
Tcl_Obj *ptr1 = (arrayPtr); \
Tcl_Obj *ptr2 = (elem); \
if (ptr1) { \
Tcl_IncrRefCount(ptr1); \
} \
if (ptr2) { \
Tcl_IncrRefCount(ptr2); \
} \
ir.twoPtrValue.ptr1 = ptr1; \
ir.twoPtrValue.ptr2 = ptr2; \
Tcl_StoreInternalRep((objPtr), &parsedVarNameType, &ir); \
} while (0)
#define ParsedGetInternalRep(objPtr, parsed, array, elem) \
do { \
|
4923
4924
4925
4926
4927
4928
4929
4930
4931
4932
4933
4934
4935
4936
4937
|
*/
if (TclPtrSetVar(interp, (Tcl_Var) varPtr, NULL, objv[1], NULL,
objv[2], TCL_LEAVE_ERR_MSG) == NULL) {
if (TclIsVarUndefined(varPtr)) {
CleanupVar(varPtr, arrayPtr);
}
return TCL_ERROR;
};
TclSetVarConstant(varPtr);
return TCL_OK;
}
/*
*----------------------------------------------------------------------
*
|
<
>
|
4929
4930
4931
4932
4933
4934
4935
4936
4937
4938
4939
4940
4941
4942
4943
|
*/
if (TclPtrSetVar(interp, (Tcl_Var) varPtr, NULL, objv[1], NULL,
objv[2], TCL_LEAVE_ERR_MSG) == NULL) {
if (TclIsVarUndefined(varPtr)) {
CleanupVar(varPtr, arrayPtr);
}
return TCL_ERROR;
}
TclSetVarConstant(varPtr);
return TCL_OK;
}
/*
*----------------------------------------------------------------------
*
|