diff options
author | dkf <donal.k.fellows@manchester.ac.uk> | 2005-09-06 14:40:10 (GMT) |
---|---|---|
committer | dkf <donal.k.fellows@manchester.ac.uk> | 2005-09-06 14:40:10 (GMT) |
commit | 2a03bdad453a632583f84f71bf5091c682999d90 (patch) | |
tree | ee5ecb28aed27dfd77a3aaad1ce38dba487777c1 /generic/tclInt.h | |
parent | 6933a16b87680a7df40757d369a9a6d6a6f333de (diff) | |
download | tcl-2a03bdad453a632583f84f71bf5091c682999d90.zip tcl-2a03bdad453a632583f84f71bf5091c682999d90.tar.gz tcl-2a03bdad453a632583f84f71bf5091c682999d90.tar.bz2 |
Add flag to lists so that evaluating contexts can handle them efficiently much
of the time even when they are not pure. The flag works by keeping track of
when the string rep was derived from the internal rep.
Diffstat (limited to 'generic/tclInt.h')
-rw-r--r-- | generic/tclInt.h | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/generic/tclInt.h b/generic/tclInt.h index 04a8096..4ec4f71 100644 --- a/generic/tclInt.h +++ b/generic/tclInt.h @@ -12,7 +12,7 @@ * See the file "license.terms" for information on usage and redistribution of * this file, and for a DISCLAIMER OF ALL WARRANTIES. * - * RCS: @(#) $Id: tclInt.h,v 1.247 2005/08/26 14:43:28 dkf Exp $ + * RCS: @(#) $Id: tclInt.h,v 1.248 2005/09/06 14:40:11 dkf Exp $ */ #ifndef _TCLINT @@ -1712,6 +1712,10 @@ typedef struct List { int refCount; int maxElemCount; /* Total number of element array slots. */ int elemCount; /* Current number of list elements. */ + int canonicalFlag; /* Set if the string representation was + * derived from the list representation. May + * be ignored if there is no string rep at + * all.*/ Tcl_Obj *elements; /* First list element; the struct is grown to * accomodate all elements. */ } List; |