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

FreeBSD Manual Pages

  
 
  

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

________________________________________________________________________________

NAME
     Tcl_CancelEval, Tcl_Canceled - cancel Tcl scripts

SYNOPSIS
     #include <tcl.h>
     int
     Tcl_CancelEval(interp, resultObjPtr, clientData, flags)

     int
     Tcl_Canceled(interp, flags)

ARGUMENTS
     Tcl_Interp *interp (in)	      Interpreter in which to cancel the script.

     Tcl_Obj *resultObjPtr (in)       Error  message to use in the cancellation,
				      or NULL to use a default message.  If  not
				      NULL,  this object will have its reference
				      count  decremented  before  Tcl_CancelEval
				      returns.

     int flags (in)		      OR'ed  combination of flag bits that spec-
				      ify additional options.  For  Tcl_CancelE-
				      val,  only  TCL_CANCEL_UNWIND is currently
				      supported.    For    Tcl_Canceled,    only
				      TCL_LEAVE_ERR_MSG   and  TCL_CANCEL_UNWIND
				      are currently supported.

     ClientData clientData (in)       Currently reserved  for  future  use.   It
				      should be set to NULL.
________________________________________________________________________________

DESCRIPTION
     Tcl_CancelEval  cancels  or  unwinds  the script in progress soon after the
     next invocation of asynchronous handlers, causing TCL_ERROR to be	the  re-
     turn  code for that script.  This function is thread-safe and may be called
     from any thread in the process.

     Tcl_Canceled checks if the script in progress has been canceled and returns
     TCL_ERROR if it has.  Otherwise, TCL_OK is returned.   Extensions	can  use
     this  function to check to see if they should abort a long running command.
     This function is thread sensitive and may only be called  from  the  thread
     the interpreter was created in.

   FLAG BITS
     Any OR'ed combination of the following values may be used for the flags ar-
     gument to procedures such as Tcl_CancelEval:

     TCL_CANCEL_UNWIND	 This  flag  is used by Tcl_CancelEval and Tcl_Canceled.
			 For Tcl_CancelEval, if this flag is set, the script  in
			 progress  is  canceled and the evaluation stack for the
			 interpreter is unwound.  For Tcl_Canceled, if this flag
			 is set, the script in progress is considered to be can-
			 celed only if the evaluation stack for the  interpreter
			 is being unwound.

     TCL_LEAVE_ERR_MSG	 This  flag  is only used by Tcl_Canceled; it is ignored
			 by other procedures.  If an error is returned and  this
			 bit is set in flags, then an error message will be left
			 in  the interpreter's result, where it can be retrieved
			 with Tcl_GetObjResult or Tcl_GetStringResult.	If  this
			 flag  bit  is not set then no error message is left and
			 the interpreter's result will not be modified.

SEE ALSO
     interp(n), Tcl_Eval(3), TIP 285

KEYWORDS
     cancel, unwind

Tcl				       8.6			   Tcl_Cancel(3)

Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=Tcl_CancelEval.tcl86&sektion=3&manpath=FreeBSD+Ports+15.1.quarterly>

home | help