Index: generic/nsf.c =================================================================== diff -u -N -r9ab3a1839485aefab2e7f412e3cdc89c3cd3adac -r994c14a5b0e1d662fc4f903f097ed0ee7a130986 --- generic/nsf.c (.../nsf.c) (revision 9ab3a1839485aefab2e7f412e3cdc89c3cd3adac) +++ generic/nsf.c (.../nsf.c) (revision 994c14a5b0e1d662fc4f903f097ed0ee7a130986) @@ -10034,7 +10034,9 @@ assert(interp); assert(object); - if (object->filterOrder) FilterResetOrder(object); + if (object->filterOrder) { + FilterResetOrder(object); + } /* fprintf(stderr, " List: ", ObjectName(object)); */ @@ -28173,7 +28175,26 @@ return TCL_OK; } + /* +objectInfoMethod lookupfilters NsfObjInfoLookupFiltersMethod { + {-argName "-guards" -nrargs 0 -type switch} + {-argName "pattern"} +} +*/ +static int +NsfObjInfoLookupFiltersMethod(Tcl_Interp *interp, NsfObject *object, int withGuards, CONST char *pattern) { + + assert(interp); + assert(object); + + if (!(object->flags & NSF_FILTER_ORDER_VALID)) { + FilterComputeDefined(interp, object); + } + return FilterInfo(interp, object->filterOrder, pattern, withGuards, 1); +} + +/* objectInfoMethod lookupmethod NsfObjInfoLookupMethodMethod { {-argName "name" -required 1 -type tclobj} } @@ -28329,6 +28350,25 @@ } /* +objectInfoMethod lookupmixins NsfObjInfoLookupMixinsMethod { + {-argName "-guards" -nrargs 0 -type switch} + {-argName "pattern" -type objpattern} +} +*/ +static int +NsfObjInfoLookupMixinsMethod(Tcl_Interp *interp, NsfObject *object, int withGuards, + CONST char *patternString, NsfObject *patternObj) { + assert(interp); + assert(object); + + if (!(object->flags & NSF_MIXIN_ORDER_VALID)) { + MixinComputeDefined(interp, object); + } + return MixinInfo(interp, object->mixinOrder, patternString, withGuards, patternObj); +} + + +/* objectInfoMethod lookupslots NsfObjInfoLookupSlotsMethod { {-argName "-source" -nrargs 1 -type "all|application|system" -default all} {-argName "-type" -required 0 -nrargs 1 -type class} @@ -28444,13 +28484,11 @@ {-argName "-heritage"} {-argName "pattern" -type objpattern} } -} */ static int NsfObjInfoMixinclassesMethod(Tcl_Interp *interp, NsfObject *object, int withGuards, int withHeritage, CONST char *patternString, NsfObject *patternObj) { - assert(interp); assert(object);