nsf

Clone Tools
  • last updated 9 hours ago
Constraints
Constraints: committers
 
Constraints: files
Constraints: dates
- fix parse context initialization

- collecting arguments

Continuing conversation

- fix shotdown comparison

- don't invalidate class-level param caches during shutdown

Merge branch 'master' of ssh://alice.wu-wien.ac.at/usr/local/src/git-repo/nsf

- add assertions for class colorings

Clarify usage of 'current methodpath' in defaultmethod of ensembles

Editing TODO

Add doc fragment on new

Adding missing info submethod docs for Class, document -dependent flag, and method create

- simplify test

- use 3-argument version of NsfMethodNamePath()

Add basic test for unexpected-#-args error in ensembles

Adding to the state of the method-path introspection reform; introducing CallStackGetFrame() which can also be used to implement CallStackGetTopFrame

- fix name paths in error messages triggered from ArgumentParse()

- move NsfMethodNamePath() out of NsfUnexpectedArgumentError() and NsfUnexpectedNonposArgumentError()

- no need to call NsfMethodNamePath in NsfArgumentError()

- move NsfMethodNamePath() out of NsfUnexpectedArgumentError() and NsfUnexpectedNonposArgumentError()

- move NsfMethodNamePath() out of NsfObjWrongArgs()

Saving away the ad hoc changes to fix method-path generation

nsf.c: - added option "-dependent" to "info subclass" - extended regression test

Working on info submethods for Class

- white-space change

nsf.c - base MixinInvalidateObjOrders() on DependentSubClasses() and avoid the need of using a separate hash table for class-mixin handling. The new implementation is several times faster and improves the speed of the functions CleanupDestroyClass(), SuperclassAdd() and NsfRelationClassMixinsSet(). Adding a class-mixin to ::xotcl::Object in OpenACS is more than 4x faster. - remove obsolete function MixinResetOrderForInstances() - rename ResetOrderOfClassesUsedAsMixins() to ResetOrderOfObjectsUsingThisClassAsObjectMixin() - used consistenlty DependentSubClasses() instead of TransitiveSubClasses() for invalidations. - extend regression test

- fix a few more cases, where required accessor method "get" was missing

- omit warnings, when value of "expected" looks like a non-positional parameter

nsf.c: - improve performance of MixinInvalidateObjOrders() by about 30% by recomping the list of the dependent classes over and over again, since MixinInvalidateObjOrders() iterates over the full list already. - Document NsfRelationClassMixinsSet() and add nonnull declarations and the usual assertions()

- added experimental code feature CYCLIC_MIXIN_ERROR

nsf.c: - new function DependentSubClasses() to determine all classes that inherit from a given class. The result extend TransitiveSubClasses() by including class mixin relationships. - simplify NsfParameterCacheClassInvalidateCmd() by using the new function DependentSubClasses(). With the new implementation, 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).