Tcl Source Code

Check-in [0bae33cd39]
Login
Bounty program for improvements to Tcl and certain Tcl packages.
Tcl 2019 Conference, Houston/TX, US, Nov 4-8
Send your abstracts to [email protected]
or submit via the online form by Sep 9.

Many hyperlinks are disabled.
Use anonymous login to enable hyperlinks.

Overview
Comment:Udate Tcl_ObjectDeleted to reflect recent changes.
Downloads: Tarball | ZIP archive | SQL archive
Timelines: family | ancestors | descendants | both | pyk-TclOO
Files: files | file ages | folders
SHA3-256: 0bae33cd39c2333ea9e792482ce911ea4b4f1a4cd9d2f6b55d18796140f7ae3d
User & Date: pooryorick 2018-01-08 18:21:40
Context
2018-02-15
10:05
Udate Tcl_ObjectDeleted to reflect recent changes. Leaf check-in: 5bd9cf6428 user: pooryorick tags: pyk-TclOO
2018-01-08
18:27
Merge pyk-TclOO branch. See [90657479e8] check-in: edf6105464 user: pooryorick tags: core-8-branch
18:21
Udate Tcl_ObjectDeleted to reflect recent changes. Closed-Leaf check-in: 0bae33cd39 user: pooryorick tags: pyk-TclOO
2018-01-03
15:11
merge 8.7 check-in: b2b20de662 user: dgp tags: pyk-TclOO
Changes
Hide Diffs Unified Diffs Ignore Whitespace Patch

Changes to generic/tclOO.c.

1079
1080
1081
1082
1083
1084
1085
1086
1087
1088
1089
1090
1091
1092
1093
1094
1095
....
2838
2839
2840
2841
2842
2843
2844
2845
2846
2847
2848
2849
2850
2851
2852
    }

    /*
     * Splice the object out of its context. After this, we must *not* call
     * methods on the object.
     */

    /* To do: Get dkf to weigh in on wether this should be protected with a
     * !IsRoot() condition.
     */ 
    TclOORemoveFromInstances(oPtr, oPtr->selfCls);

    FOREACH(mixinPtr, oPtr->mixins) {
	i -= TclOORemoveFromInstances(oPtr, mixinPtr);
    }
    if (i) {
	ckfree(oPtr->mixins.list);
................................................................................
    return (Tcl_Class) ((Object *)object)->classPtr;
}

int
Tcl_ObjectDeleted(
    Tcl_Object object)
{
    return Deleted((Object *)object) ? 1 : 0;
}

Tcl_Object
Tcl_GetClassAsObject(
    Tcl_Class clazz)
{
    return (Tcl_Object) ((Class *)clazz)->thisPtr;






<
|
<







 







|







1079
1080
1081
1082
1083
1084
1085

1086

1087
1088
1089
1090
1091
1092
1093
....
2836
2837
2838
2839
2840
2841
2842
2843
2844
2845
2846
2847
2848
2849
2850
    }

    /*
     * Splice the object out of its context. After this, we must *not* call
     * methods on the object.
     */


    /* To do: Should this be protected with a * !IsRoot() condition?  */ 

    TclOORemoveFromInstances(oPtr, oPtr->selfCls);

    FOREACH(mixinPtr, oPtr->mixins) {
	i -= TclOORemoveFromInstances(oPtr, mixinPtr);
    }
    if (i) {
	ckfree(oPtr->mixins.list);
................................................................................
    return (Tcl_Class) ((Object *)object)->classPtr;
}

int
Tcl_ObjectDeleted(
    Tcl_Object object)
{
    return ((Object *)object)->command == NULL;
}

Tcl_Object
Tcl_GetClassAsObject(
    Tcl_Class clazz)
{
    return (Tcl_Object) ((Class *)clazz)->thisPtr;