Go to main content

man pages section 3: Extended Library Functions, Volume 1

Exit Print View

Updated: Wednesday, July 27, 2022
 
 

Tcl_RecordAndEvalObj (3tcl)

Name

Tcl_RecordAndEvalObj - save command on history list before evaluating

Synopsis

#include <tcl.h>

int
Tcl_RecordAndEvalObj(interp, cmdPtr, flags)

Description

Tcl Library Procedures                              Tcl_RecordAndEvalObj(3tcl)



______________________________________________________________________________

NAME
       Tcl_RecordAndEvalObj - save command on history list before evaluating

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  value  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    do     not     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_GlobalE-
       valObj  if the TCL_EVAL_GLOBAL bit is set in flags).  It returns a com-
       pletion code such as TCL_OK just  like  Tcl_EvalObjEx,  as  well  as  a
       result value containing additional information (a result value or error
       message) that can be retrieved using Tcl_GetObjResult.  If you  do  not
       want  the  command  recorded on the history list then you should invoke
       Tcl_EvalObjEx instead of Tcl_RecordAndEvalObj.  Normally  Tcl_RecordAn-
       dEvalObj  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.



ATTRIBUTES
       See attributes(7) for descriptions of the following attributes:


       +---------------+------------------+
       |ATTRIBUTE TYPE | ATTRIBUTE VALUE  |
       +---------------+------------------+
       |Availability   | runtime/tcl-8    |
       +---------------+------------------+
       |Stability      | Uncommitted      |
       +---------------+------------------+

SEE ALSO
       Tcl_EvalObjEx, Tcl_GetObjResult


KEYWORDS
       command, event, execute, history, interpreter, value, record



NOTES
       Source code for open source software components in Oracle  Solaris  can
       be found at https://www.oracle.com/downloads/opensource/solaris-source-
       code-downloads.html.

       This    software    was    built    from    source     available     at
       https://github.com/oracle/solaris-userland.    The  original  community
       source was downloaded from  http://prdownloads.sourceforge.net/tcl/tcl-
       core8.6.7-src.tar.gz.

       Further information about this software can be found on the open source
       community website at https://www.tcl.tk/.



Tcl                                   8.0
                                                    Tcl_RecordAndEvalObj(3tcl)