tclAPI.h

Clone Tools
  • last updated 2 hours ago
Constraints
Constraints: committers
 
Constraints: files
Constraints: dates
- removed c-implementation of method vwait, it was replaced by "vwait :varName". We had to allow flag TCL_GLOBAL_ONLY in InterpColonVarResolver(), since Tcl vwait implementation calls it with that flag. - added a scripted implementation for vwait in xotcl2

  1. … 8 more files in changeset.
- provide full list of initializers

  1. … 1 more file in changeset.
- furter c cleanup

  1. … 2 more files in changeset.
- removed leftover -public flag in nsf::method - general cleanup: removed unused arguments

  1. … 7 more files in changeset.
- added flag "-ad" to ::nsf::proc for obtaining the semantics of ad_proc in OpenACS (boolean with no arguments, append "_p" to variable names) - added "... info method definition ..." for nsfprocs - new function DStringAppendQualName() to append qualified name to a DString - removed obsolete function NSCmdFullName()

  1. … 3 more files in changeset.
- added methodtype "nsfproc" to "... info methods ...", to be used with namespace qualified names - return "nsfproc" as methodtype for nsfprocs - refactored InvokeShadowedProc() - some minor code cleanup and improved documentation

  1. … 5 more files in changeset.
- added experimental ::nsf::proc for realization of procs with next scripting argument passing. These nsf::procs improve the orthogonality of the code (using e.g. nonpos args and value checker for procs) and allows the same introspection interface (info method parameter|parametersyntax, ...)

  1. … 6 more files in changeset.
- some minor renaming

  1. … 1 more file in changeset.
- defined nsf::deprecated as tcl proc, using ::nsf::log - some minor refactoring

  1. … 5 more files in changeset.
- added missing required

  1. … 1 more file in changeset.
- generic/gentclAPI.decls: Set the ::nsf::setter parameter as required, otherwise ::nsf::setter crashes upon omitting the parameter/setter name. - library/lib/doc-tools.tcl: Reduced verbosity

  1. … 2 more files in changeset.
- streamlined error messages - removed NsfErrBadVal() and replaced it with a generalized version of NsfObjErrType(

  1. … 7 more files in changeset.
- made error messages more consistent - improved error messages for "returns" and "nsf::is" (omit parameter name)

  1. … 11 more files in changeset.
- changed relation handling by evaluating the relationcmd in the parent context to keep evaluation order. - extend introspection "nsf::configure objectsystem": the command returns now all system methods in the syntax of nsf::createobjectsystem - "nsf::createobjectsystem" creates now a warning when an existing objectsystem is redefined and ignores the new definition attempt. This was done with the purpose to allow "package forget nx; package require nx" - Allow overwriting of redefine protected method during bootstrap to ease "package forget nx; package require nx" - forward had just "-objscope", no general "-frame method|object". Since forwarder have client data, they always push a method frame. So, the situation is different to nsd::alias and ::nsf::dispatch. Therefore, the flag "-objscope" was renamed to "-objectframe" to provide better consistency with "-frame object" - fixed bug, where error handling of invalid options in ForwardProcessOptions() could lead to a crash - return forwardoption "-earlybinding" via instrospection - extended regression test

  1. … 14 more files in changeset.
- gentclApi.tcl: added optimizer rule for single argument of type tclobj - improved speed of CompiledLocalsLookup slightly

  1. … 3 more files in changeset.
- added a few more small optimization. - code-generator: don't call argument parser, when no arguments are specified

  1. … 6 more files in changeset.
- removed bug-alert from nx.tcl (wrong false-positives for compiled locals in slots) - added a few small optimization. nsf appears to run on the shootout benchmark the same speed like a year ago (which much less functionality)

  1. … 5 more files in changeset.
- implemented exported command ::nsf::self as fast conveniance replacement for "::nsf::current object".

  1. … 8 more files in changeset.
- copied decls for objectMethod and classMethod as comments to nsf.c, fixed order - documented a few functions

  1. … 3 more files in changeset.
- fix requiredness of several info methods - added "nsf::configure debug ?level?"

  1. … 5 more files in changeset.
- renamed some arguments of tcl interface to increase consistency - make requiredness explicit for nsf::cmds - introduce ::nsf::parametersyntax to provide syntax for potentially missing definitions - provided ::nsf::parametersyntax for 3 ::nsf commands and 7 nx methods (from relationslots)

  1. … 6 more files in changeset.
- replaced "-objscope" and "-nonleaf" by "-frame object|method|default" for nsf::alias and nsf::default - added functionality for "-frame method" to nsf::dispatch - made the order of argument in ::nsf::alias and method "alias" the same (always first the method, then "-frame ...") - extened regression test

  1. … 15 more files in changeset.
- added functionality to show enumerated values in "info parametersyntax"

  1. … 5 more files in changeset.
- changed option -expand in "info methods" and "info lookup methods" into "-path" to associate with the method path - changed method property name from "protected" to "call-protected" - changed nx::defaultMethodProtection to nx::defaultMethodCallProtection - nx::defaultAttributeProtection is used for scripted methods, forwarders and aliases - added nx::defaultAttributeProtection, used for setter and attributes

  1. … 17 more files in changeset.
- changed option -expand in "info methods" and "info lookup methods" into "-path" to associate with the method path

  1. … 6 more files in changeset.
- added syntax "?arg ...?" in parametsyntax output for "args" - removed "info forward" from nx::Object and nx::Class (can be replaced by "info methods" and "info method")

  1. … 6 more files in changeset.
- nsf::current: new option "methodpath", returns the full name of an ensemble method starting from the ensemble root. - documented functions in nfsStack.c - removed obsolete CallStackGetFrame(), replaced by CallStackGetTopFrame()

  1. … 5 more files in changeset.
- "info lookup methods": order of non-pos parameters alphabetically - added option "-expand" to "info lookup methods ". It collects ensemble methods along the precedence path - added support for ensemble methods in "info lookup method" - extended regression test

  1. … 5 more files in changeset.
- nsf.c: use name "varTablePtr" instead of "varTable" when referring to the table - new option "slotcontainer" for "methodproperty" to flag slotcontainer to make them easier to process in the serializer . don't report slot container in "info methods -expand" - new function "::nx::isSlotContainer" to centralize checking for slotcontainers (used by serilaizer) - support export of method ensembles in serializer

  1. … 9 more files in changeset.
- new option "-expand" for "obj|class info methods" to return compound names (i.e. it lists the full ensemble names) Example: ::nx::Object info methods -expand "*filter*" returns filter {info filter guard} {info filter methods} {info lookup filter} - allow ensemble names in nsf::methodproperty - fix compound name lookups when aliases link to shared ensemble objects - make objectName() NULL-safe - fix option "-source application" when applied directly on base-classes - extend regression test

  1. … 6 more files in changeset.