Index: TODO =================================================================== diff -u -rdf8c49ffd4cccb5071abd4b7bca0f6d48350c79a -r99c7e7c4351ea0c17971fa41bd5d3c0f5a4c0321 --- TODO (.../TODO) (revision df8c49ffd4cccb5071abd4b7bca0f6d48350c79a) +++ TODO (.../TODO) (revision 99c7e7c4351ea0c17971fa41bd5d3c0f5a4c0321) @@ -5361,16 +5361,26 @@ NsfParameterCacheClassInvalidateCmd() is as efficient as before without to MostGeneralSuperclass optimization (but being complete now) when working on the root classes (an more efficient on subclasses). +- added experimental code feature CYCLIC_MIXIN_ERROR ======================================================================== TODO: -- check other places whether DependentSubClasses() should be used instead of - TransitiveSubClasses() - how should we treat cyclic subclass relationships built via class mixins. (either complain at mixin registration or soft warnings or ignoring - since redundant mixin classes are ignored so far). + if we disallow cycles in class-mixins, we can't do "nx::Object mixin add M" + +- Document/nonnull/resolve NsfRelationClassMixinsSet() +- check other places whether DependentSubClasses() should be used instead of + TransitiveSubClasses() + +- MixinInvalidateObjOrders() is based on TransitiveSubClasses but calls + NsfParameterCacheClassInvalidateCmd() which computes its own set + // MixinInvalidateObjOrders calls NsfParameterCacheClassInvalidateCmd + Some functions use before-lists for cleanup, which is fine. + - should we change "/obj/ info lookup syntax /methodName/" to return obj and method as well? (similar to "info method syntax /methodName/") - we could drop methods::object::info::objectparameter