nsf

Clone Tools
  • last updated 9 hours ago
Constraints
Constraints: committers
 
Constraints: files
Constraints: dates
Add some tests, to be continued

Instrument code a little, with a working version; but I am not satisfied

Improve cleanness of compilation with Tcl 8.5

Remove unneeded function

add const declaration

Don't allow bytearrays as name of non-pos args

We try to address the problem, that the argument parser might add string reps to Tcl_Objs

without string reps. This is in particular nasty for pure byte arrays in Tcl 8.6, which

are defined as having no string. We do not want to change purtiy just by passing

such values in arguments,

Adjust print format to recent changes

nsf.c, nsfInt.h, nsfObj.c: Make epoch counters unsigned ints, so doubling the number of possible epochs.

* nsf.c: Unify cmd flags cast (unsigned long -> unsigned int)

* nsf.c (ObjectCmdMethodDispatch): Simplify and cleanup condition expressions.

nsf.c (ObjectCmdMethodDispatch), submethods.test: Enable private checking on ensembles, added test cases to capture the intented behaviour behind -local and/or private for ensemble methods.

move GetObj() after tests of non-null asserts

Fix collateral damage of protection changes

Move prototypes to begin of file

Cleanup: Don't shadow variable names.

Minor cleanup: remove commented code, add missin nonnull-assert, shorten overlong lines

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

* nsf.c (NsfMethodForwardCmd): Provide correct scoping condition when requesting a method handle for a submethod forwarder. Added basic tests.

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

* nsf.c, nsfStack.c: Bump copyright years.

* nsf.c (ObjectCmdMethodDispatch), protected.test: For ensemble (submethod) dispatches, since ever, call protection had not been enforced at all. This commit enables call protection (protected) for ensembles and adds basic tests. * nsfStack.c (GetSelfObj): To allow one to resolve the self reference at arbitrary callstack levels, separate GetSelfObj into GetSelfObj (macro) for the topmost self and GetSelfObj2.

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

fix typo

* nsf.c (NsfCCreateMethod): During a shutdown, in a filter setting, objv is not necessarily populated. Prior to this fix, the following crashes on exit for "ObjStr(objv[1])":

nx::Class create Klass

Klass public object method expand args {

return [[self] new {*}$args]

}

Klass object filters add expand

Along the way, rendered the print-out more informative.

Add likely/unlikely for NSF_DURING_DELETE checks

Code cleanup

- remove calls to deprecated function Tcl_DStringTrunc

- prefer boolean expressions to avoid signed conversions

- add default statement to switch to ease life of static checkers

Add Valgrind/callgrind support

Improve performance of ObjectSystemsCheckSystemMethod() by over 20%

Optimization for aliases

Optimized AliasAdd() and AliasGet() by avoiding the usage of

Tcl_SetVar2Ex() and Tcl_GetVar2Ex(). This change improves the

performance of AliasAdd() by ~20% and AliasGet() by 10%.

Strangely, Tcl does not provide an interface to the

Tcl_Obj-based TclObjUnsetVar2(), which is used internally

by Tcl_UnsetVar2()), such we could also avoid the latter.

minor cleanup and optimizations