Tcl_RecordAndEvalObj()

save command on history list before evaluating 

Tcl Library Procedures


SYNOPSIS

#include <tcl.h>

int Tcl_RecordAndEvalObj(interp, cmdPtr, flags)


ARGUMENTS

Tcl_Interp *interp (in) 

Tcl interpreter in which to evaluate command.

Tcl_Obj *cmdPtr (in) 

Points to a Tcl object containing a command (or sequence of commands) to execute.

int flags (in) 

An OR'ed combination of flag bits. TCL_NO_EVAL means record the command but don't evaluate it. TCL_EVAL_GLOBAL means evaluate the command at global level instead of the current stack level.


DESCRIPTION

Tcl_RecordAndEvalObj() is invoked to record a command as an event on the history list and then execute it using Tcl_EvalObjEx() (or Tcl_GlobalEvalObj() if the TCL_EVAL_GLOBAL bit is set in flags). It returns a completion code such as TCL_OK just like Tcl_EvalObjEx(), as well as a result object containing additional information (a result value or error message) that can be retrieved using Tcl_GetObjResult(). If you don't want the command recorded on the history list then you should invoke Tcl_EvalObjEx() instead of Tcl_RecordAndEvalObj(). Normally Tcl_RecordAndEvalObj() is only called with top-level commands typed by the user, since the purpose of history is to allow the user to re-issue recently-invoked commands. If the flags argument contains the TCL_NO_EVAL bit then the command is recorded without being evaluated.


PORTABILITY

Windows 10. Windows Server 2016. Windows Server 2019. Windows 11. Windows Server 2022. Windows Server 2025.


AVAILABILITY

PTC MKS Toolkit for Professional Developers
PTC MKS Toolkit for Enterprise Developers
PTC MKS Toolkit for Enterprise Developers 64-Bit Edition


SEE ALSO

Functions:
Tcl_EvalObjEx(), Tcl_GetObjResult()


PTC MKS Toolkit 10.5 Documentation Build 40.