Tcl_PkgRequireSection: Tcl Library Procedures (3)Updated: 7.5 |
Tcl_PkgRequireSection: Tcl Library Procedures (3)Updated: 7.5 |
#include <tcl.h> CONST char * Tcl_PkgRequire(interp, name, version, exact) CONST char * Tcl_PkgRequireEx(interp, name, version, exact, clientDataPtr) CONST char * Tcl_PkgPresent(interp, name, version, exact) CONST char * Tcl_PkgPresentEx(interp, name, version, exact, clientDataPtr) int Tcl_PkgProvide(interp, name, version) int Tcl_PkgProvideEx(interp, name, version, clientData)
These procedures provide C-level interfaces to Tcl's package and version management facilities.
Tcl_PkgRequire is equivalent to the package require command, Tcl_PkgPresent is equivalent to the package present command, and Tcl_PkgProvide is equivalent to the package provide command.
See the documentation for the Tcl commands for details on what these procedures do.
If Tcl_PkgPresent or Tcl_PkgRequire complete successfully they return a pointer to the version string for the version of the package that is provided in the interpreter (which may be different than version); if an error occurs they return NULL and leave an error message in the interpreter's result.
Tcl_PkgProvide returns TCL_OK if it completes successfully; if an error occurs it returns TCL_ERROR and leaves an error message in the interpreter's result.
Tcl_PkgProvideEx, Tcl_PkgPresentEx and Tcl_PkgRequireEx allow the setting and retrieving of the client data associated with the package. In all other respects they are equivalent to the matching functions.