Go to main content

man pages section 3: Extended Library Functions, Volume 1

Exit Print View

Updated: Wednesday, July 27, 2022
 
 

Tcl_RecordAndEval (3tcl)

Name

Tcl_RecordAndEval - save command on history list before evaluating

Synopsis

#include <tcl.h>

int
Tcl_RecordAndEval(interp, cmd, flags)

Description

Tcl_RecordAndEval(3tcl)     Tcl Library Procedures     Tcl_RecordAndEval(3tcl)



______________________________________________________________________________

NAME
       Tcl_RecordAndEval - save command on history list before evaluating

SYNOPSIS
       #include <tcl.h>

       int
       Tcl_RecordAndEval(interp, cmd, flags)

ARGUMENTS
       Tcl_Interp *interp (in)          Tcl  interpreter  in which to evaluate
                                        command.

       const char *cmd (in)             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_RecordAndEval is invoked to record a command as  an  event  on  the
       history  list  and then execute it using Tcl_Eval (or Tcl_GlobalEval if
       the TCL_EVAL_GLOBAL bit is set in flags).  It returns a completion code
       such  as  TCL_OK  just  like  Tcl_Eval and it leaves information in the
       interpreter's result.  If you do not want the command recorded  on  the
       history list then you should invoke Tcl_Eval instead of Tcl_RecordAndE-
       val.  Normally Tcl_RecordAndEval 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.

       Note  that  Tcl_RecordAndEval  has  been largely replaced by the value-
       based  procedure  Tcl_RecordAndEvalObj.   That  value-based   procedure
       records  and  optionally executes a command held in a Tcl value instead
       of a string.



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


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

SEE ALSO
       Tcl_RecordAndEvalObj


KEYWORDS
       command, event, execute, history, interpreter, 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                                   7.4              Tcl_RecordAndEval(3tcl)