Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
Tcl_PkgRequire(3)	    Tcl	Library	Procedures	     Tcl_PkgRequire(3)

______________________________________________________________________________

NAME
       Tcl_PkgRequire,	Tcl_PkgRequireEx,  Tcl_PkgRequireProc, Tcl_PkgPresent,
       Tcl_PkgPresentEx, Tcl_PkgProvide, Tcl_PkgProvideEx  -  package  version
       control

SYNOPSIS
       #include	<tcl.h>

       const char *
       Tcl_PkgRequire(interp, name, version, exact)

       const char *
       Tcl_PkgRequireEx(interp,	name, version, exact, clientDataPtr)

       int
       Tcl_PkgRequireProc(interp, name,	objc, objv, 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)

ARGUMENTS
       Tcl_Interp *interp (in)		      Interpreter   where  package  is
					      needed or	available.

       const char *name	(in)		      Name of package.

       const char *version (in)		      A	version	string	consisting  of
					      one or more decimal numbers sep-
					      arated by	dots.

       int exact (in)			      Non-zero	means  that  only  the
					      particular  version specified by
					      version  is  acceptable.	  Zero
					      means  that  newer versions than
					      version are also	acceptable  as
					      long as they have	the same major
					      version number as	version.

       ClientData clientData (in)	      Arbitrary	value to be associated
					      with the package.

       ClientData *clientDataPtr (out)	      Pointer  to  place  to store the
					      value associated with the	match-
					      ing  package. It is only changed
					      if the pointer is	not  NULL  and
					      the  function completed success-
					      fully.

       int objc	(in)			      Number of	requirements.

       Tcl_Obj*	objv[] (in)		      Array of requirements.
______________________________________________________________________________

DESCRIPTION
       These procedures	provide	C-level	interfaces to Tcl's package  and  ver-
       sion management facilities.

       Tcl_PkgRequire  is equivalent to	the package require command, Tcl_PkgP-
       resent 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 in-
       terpreter'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	inter-
       preter's	result.

       Tcl_PkgProvideEx, Tcl_PkgPresentEx and Tcl_PkgRequireEx allow the  set-
       ting  and retrieving of the client data associated with the package. In
       all other respects they are equivalent to the matching functions.

       Tcl_PkgRequireProc is the form of package require handling multiple re-
       quirements.  The	other forms are	present	for backward compatibility and
       translate their invocations to this form.

KEYWORDS
       package,	present, provide, require, version

Tcl				      7.5		     Tcl_PkgRequire(3)

NAME | SYNOPSIS | ARGUMENTS | DESCRIPTION | KEYWORDS

Want to link to this manual page? Use this URL:
<https://www.freebsd.org/cgi/man.cgi?query=Tcl_PkgPresent.tcl85&sektion=3&manpath=FreeBSD+13.0-RELEASE+and+Ports>

home | help