Annotation of researchv10no/cmd/worm/scsi/tcl/Tcl_Eval.man, revision 1.1

1.1     ! root        1: '\" Copyright 1989 Regents of the University of California
        !             2: '\" Permission to use, copy, modify, and distribute this
        !             3: '\" documentation for any purpose and without fee is hereby
        !             4: '\" granted, provided that this notice appears in all copies.
        !             5: '\" The University of California makes no representations about
        !             6: '\" the suitability of this material for any purpose.  It is
        !             7: '\" provided "as is" without express or implied warranty.
        !             8: '\" 
        !             9: '\" $Header: /sprite/src/lib/tcl/RCS/Tcl_Eval.man,v 1.3 90/01/07 16:02:10 ouster Exp $ SPRITE (Berkeley)
        !            10: '\" 
        !            11: .so \*(]ltmac.sprite
        !            12: .HS Tcl_Eval tcl
        !            13: .BS
        !            14: .SH NAME
        !            15: Tcl_Eval \- execute a Tcl command string
        !            16: .SH SYNOPSIS
        !            17: .nf
        !            18: \fB#include <tcl.h>\fR
        !            19: .sp
        !            20: int
        !            21: \fBTcl_Eval\fR(\fIinterp, cmd, flags, termPtr\fR)
        !            22: .SH ARGUMENTS
        !            23: .AS Tcl_Interp **termPtr;
        !            24: .AP Tcl_Interp *interp in
        !            25: Interpreter in which to execute the command.  String result will be
        !            26: stored in \fIinterp->result\fR.
        !            27: .AP char *cmd in
        !            28: Command (or sequence of commands) to execute.
        !            29: .AP char flags in
        !            30: Either \fBTCL_BRACKET_TERM\fR or 0.
        !            31: .VS
        !            32: If 0, then \fBTcl_Eval\fR will process commands from \fIcmd\fR until
        !            33: it reaches the null character at the end of the string;  newlines
        !            34: will be treated as command separators.  If \fBTCL_BRACKET_TERM\fR,
        !            35: then \fBTcl_Eval\fR will process comands from \fIcmd\fR until either it
        !            36: reaches a null character or it encounters a close bracket that isn't
        !            37: backslashed or enclosed in braces, at which
        !            38: point it will return;  newlines will treated as white space, not as
        !            39: command separators.  Under normal conditions, \fIflags\fR should be 0.
        !            40: .VE
        !            41: .AP char **termPtr out
        !            42: If 
        !            43: .VS
        !            44: \fItermPtr\fR is non-NULL, \fBTcl_Eval\fR fills in *\fItermPtr\fR with
        !            45: the address of the character just after the last one in the last command
        !            46: successfully executed (normally the null character at the end of \fIcmd\fR).
        !            47: If an error occurs in the first command in \fIcmd\fR, then \fI*termPtr\fR
        !            48: will be set to \fIcmd\fR.
        !            49: .VE
        !            50: .BE
        !            51: 
        !            52: .SH DESCRIPTION
        !            53: .PP
        !            54: \fBTcl_Eval\fR parses commands from \fIcmd\fR and executes them in
        !            55: order until either an error occurs or \fBTcl_Eval\fR reaches a terminating
        !            56: character (']' or '\0', depending on the value of \fIflags\fR).
        !            57: The return value from \fBTcl_Eval\fR is one
        !            58: of the Tcl return codes \fBTCL_OK\fR, \fBTCL_ERROR\fR, \fBTCL_RETURN\fR, \fBTCL_BREAK\fR, or
        !            59: \fBTCL_CONTINUE\fR, and \fIinterp->result\fR will point to
        !            60: a string with additional information (result value or error message).
        !            61: This return information corresponds to the last command executed from
        !            62: \fIcmd\fR.
        !            63: .PP
        !            64: During the processing of a command it is legal to make nested
        !            65: calls to \fBTcl_Eval\fR (this is how conditionals, loops, and procedures
        !            66: are implemented).  If a code other than
        !            67: \fBTCL_OK\fR is returned from a nested \fBTcl_Eval\fR invocation, then the
        !            68: caller should normally return immediately, passing that same
        !            69: return code back to its caller, and so on until the top-level application is
        !            70: reached.  A few commands, like \fBfor\fR, will check for certain
        !            71: return codes, like \fBTCL_BREAK\fR and \fBTCL_CONTINUE\fR, and process them
        !            72: specially without returning.
        !            73: .PP
        !            74: \fBTcl_Eval\fR keeps track of how many nested Tcl_Eval invocations are
        !            75: in progress for \fIinterp\fR.
        !            76: If a code of \fBTCL_RETURN\fR, \fBTCL_BREAK\fR, or \fBTCL_CONTINUE\fR is
        !            77: about to be returned from the topmost \fBTcl_Eval\fR invocation for
        !            78: \fIinterp\fR, then \fBTcl_Eval\fR converts the return code to \fBTCL_ERROR\fR
        !            79: and sets \fIinterp->result\fR to point to an error message indicating that
        !            80: the \fBreturn\fR, \fBbreak\fR, or \fBcontinue\fR command was
        !            81: invoked in an inappropriate place.  This means that top-level
        !            82: applications should never see a return code from \fBTcl_Eval\fR other then
        !            83: \fBTCL_OK\fR or \fBTCL_ERROR\fR.
        !            84: 
        !            85: .SH KEYWORDS
        !            86: command, execute, interpreter

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.