HPUX Eval[3]

Eval in anderen Kapiteln des hpux Handbuch:
Tcl_Eval(3) Tcl Tcl_Eval(3)
Tcl Library Procedures Tcl Library Procedures
7.0
___________________________________________________________________________
NAME
Tcl_Eval, Tcl_VarEval, Tcl_EvalFile, Tcl_GlobalEval - execute Tcl
commands
SYNOPSIS
#include <tcl.h>
int
Tcl_Eval(interp, cmd) |
int
Tcl_VarEval(interp, string, string, ... (char *) NULL)
int
Tcl_EvalFile(interp, fileName)
int
Tcl_GlobalEval(interp, cmd)
ARGUMENTS
Tcl_Interp *interp (in) Interpreter in which to execute
the command. String result will
be stored in interp->result.
char *cmd (in) Command (or sequence of commands)
to execute. Must be in writable
memory (Tcl_Eval makes temporary
modifications to the command).
char *string (in) String forming part of Tcl
command.
char *fileName (in) Name of file containing Tcl
command string.
___________________________________________________________________________
DESCRIPTION
All four of these procedures execute Tcl commands. Tcl_Eval is the
core procedure: it parses commands from cmd and executes them in |
order until either an error occurs or it reaches the end of the |
string. The return value from Tcl_Eval is one of the Tcl return codes |
TCL_OK, TCL_ERROR, TCL_RETURN, TCL_BREAK, or TCL_CONTINUE, and
interp->result will point to a string with additional information
(result value or error message). This return information corresponds
to the last command executed from cmd.
- 1 - Formatted: August 11, 1996
Tcl_Eval(3) Tcl Tcl_Eval(3)
Tcl Library Procedures Tcl Library Procedures
7.0
Tcl_VarEval takes any number of string arguments of any length,
concatenates them into a single string, then calls Tcl_Eval to execute
that string as a Tcl command. It returns the result of the command
and also modifies interp->result in the usual fashion for Tcl
commands. The last argument to Tcl_VarEval must be NULL to indicate
the end of arguments.
Tcl_EvalFile reads the file given by fileName and evaluates its
contents as a Tcl command by calling Tcl_Eval. It returns a standard
Tcl result that reflects the result of evaluating the file. If the
file couldn't be read then a Tcl error is returned to describe why the
file couldn't be read.
Tcl_GlobalEval is similar to Tcl_Eval except that it processes the
command at global level. This means that the variable context for the
command consists of global variables only (it ignores any Tcl
procedure that is active). This produces an effect similar to the Tcl
command ``uplevel 0''.
During the processing of a Tcl command it is legal to make nested
calls to evaluate other commands (this is how conditionals, loops, and
procedures are implemented). If a code other than TCL_OK is returned
from a nested Tcl_Eval invocation, then the caller should normally
return immediately, passing that same return code back to its caller,
and so on until the top-level application is reached. A few commands,
like for, will check for certain return codes, like TCL_BREAK and
TCL_CONTINUE, and process them specially without returning.
Tcl_Eval keeps track of how many nested Tcl_Eval invocations are in
progress for interp. If a code of TCL_RETURN, TCL_BREAK, or
TCL_CONTINUE is about to be returned from the topmost Tcl_Eval
invocation for interp, then Tcl_Eval converts the return code to
TCL_ERROR and sets interp->result to point to an error message
indicating that the return, break, or continue command was invoked in
an inappropriate place. This means that top-level applications should
never see a return code from Tcl_Eval other then TCL_OK or TCL_ERROR.
KEYWORDS
command, execute, file, global, interpreter, variable
- 2 - Formatted: August 11, 1996