generic

Clone Tools
  • last updated 11 hours ago
Constraints
Constraints: committers
 
Constraints: files
Constraints: dates
- move assignment aster nonnull assertions

- turned all for-loops controlled over a nonnull value into while loops.

  1. … 1 more file in changeset.
Slot trace reform: - redesign of slot interface of traces from * variables contains cmds and variable references to * slot specific methods with the same interface as slot-setters - new: * specify flag "-trace" with a list of values "get", "set", "default" * when flag is set, a trace will be registered calling methods value=get obj variable value=set obj variable value value=default obj variable on the slot (actually the first two are identical with the methods used for slot-defined accessors) - updated regression test * new flag "-notrace" for "nsf::var::set" and "nsf::var::get"

  1. … 6 more files in changeset.
- make sure to reset prevPreventRecursionFlags to value before the call

- changed interface of NsfDStringEval to control behavior via bitflags (this is after all more readable than a argument list of "0" and "1"s) - added optional recursion prevention for functions called via NsfDStringEval (handling NSF_EVAL_DEBUG, NSF_EVAL_LOG, NSF_EVAL_DEPRECATED) - added regression tests for potential recursive calls

  1. … 2 more files in changeset.
- add result in debug exit calls

- return fully qualified name for "::nsf::cmd::info definition" when called on plain procs

- fix compilation when DTRACE but no PROFILE is activated

- prefer boolean expressions in assert() statements

- make sure, we do not pass null values to nonnull arguments

- replace all remaning ObjectName and ClassName with variant with trailing "_" when appropriate - allow nsf::procs with zero arguments or plain arguments (when "-debug" is used - extended regression test - bump version number to 2.1

  1. … 5 more files in changeset.
- fix potential memory corruption bug in NsfDStringVPrintf()

  1. … 1 more file in changeset.
- nx: added flag "-debug" and "-deprecated" to methods "method" "object method" "alias" "object alias" "forward" "object forward" such one can use e.g. /cls/ public alias -deprecated|-debug /method/ ... /cls/ public forward -deprecated|-debug /method/ ... /cls/ public method -deprecated|-debug /method/ ... /obj/ public object alias -deprecated|-debug /method/ ... /obj/ public object forward -deprecated|-debug /method/ ... /obj/ public object method -deprecated|-debug /method/ ...

- added new cmd:

nsf::method::property /obj/ ?-per-object? /method/ exists

to check, whether a method is defined for an object.

- output triggered via "-debug" is now generated via the

tcl functions "nsf::debug::call" and "nsf::debug::exit",

that can be redefined (similar to e.g. nsf::deprecated)

- cleanup of nsfProfile.c commands

- extended regression test

  1. … 4 more files in changeset.
- handling "deprecated" and "debug" properties for nsf::proc (in "nsf::cmd::info definition /proc/" and serializer)

  1. … 3 more files in changeset.
- added nsf::method::property /obj/ /method/ debug ?0|1? when debug is activated, a debug line written to the log file when the function is called and exited

- added nsf::method::property /obj/ /method/ deprecated ?0|1?

when deprecated is activated, a warning written to the log file when

the function is called

- added flags to nsf::proc: -debug and -deprecated

(can als be set via nsf::method::property with an arbitrary object

and proc passed fully qualified)

- bumped version number to 2.0.1

  1. … 3 more files in changeset.
- new introspection method: "/obj/ info baseclass" - extended regression test

  1. … 7 more files in changeset.
- New macros NSF_nonnull_assert() and nonnull_assert() Background: The unreleased gcc6 with "-pedantic" complaints since recently about asserts, in which nonnull conditions implied by nonnull declarations are explicitly tested, and spits out warnings like ... warning: nonnull argument ... compared to NULL ... The new macros turns off asserts, when gcc6 is used.

  1. … 1 more file in changeset.
Profile trace enhancements: - add optional argument "-builtins" to nsf::__profile_trace to trace a selected list of builtins. Every element of the list passed to "-builtins" might contain a cmd name and optionally a maximum number of arguments to be shown (typically 0 or 1) - generalized NsfReplaceCommand* logic to become more general usable (e.g. for the builtins mechanism of nsf::__profile_trace)

  1. … 1 more file in changeset.
- remove redundant prototype

- Use standard logging for nsf::__profile_trace ... -verbose true ... By using the standard logging mechanism, we can redefining ::nsf::log to output e.g. trace in a GUI. - Add argument "-dontsave" to nsf::__profile_trace to avoid saving trace in memory - Refactor trace and debug output to deliver lists. This makes it easier to postprocess the results from Tcl.

- place arguments of preprocessor macros into parens

- silence cppcheck 1.71

- keep Tcl error messages, when Tcl_ObjSetVar2() fails.

- handle result of Tcl_ObjSetVar2() in all cases

  1. … 1 more file in changeset.
- don't swallow errors triggered from variable write traces in configure

  1. … 1 more file in changeset.
- white space change

- new command nsf::method::forward::property in analogy to nsf::method::property for reading+writing introspection of forwarders (important for serializer, when different target objects are specified, to map the per-object forwarder) - extended regression test - bumped version number of serializer to 2.1

  1. … 6 more files in changeset.
- reduce implicit conversions - wite body of if-statements as blocks - whitespace changes - prefer boolean expressions - add likely/unlikely hints

  1. … 1 more file in changeset.
- prefer boolean expressions - reduce implicit conversions - wite body of if-statements as blocks - whitespace changes - update licenses

  1. … 1 more file in changeset.
- improve robustness of destroy: in case an error happened in a destroy method in implicit delete operations, a crash was possible, since the state of the object to be delete was somewhat unclear (it might or might not have been deleted). Now, the object is explicitly kept longer around to allow proper handling).

  1. … 1 more file in changeset.