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

1.1     ! root        1: /*
        !             2:  * tcl.h --
        !             3:  *
        !             4:  *     This header file describes the externally-visible facilities
        !             5:  *     of the Tcl interpreter.
        !             6:  *
        !             7:  * Copyright 1987 Regents of the University of California
        !             8:  * Permission to use, copy, modify, and distribute this
        !             9:  * software and its documentation for any purpose and without
        !            10:  * fee is hereby granted, provided that the above copyright
        !            11:  * notice appear in all copies.  The University of California
        !            12:  * makes no representations about the suitability of this
        !            13:  * software for any purpose.  It is provided "as is" without
        !            14:  * express or implied warranty.
        !            15:  *
        !            16:  * $Header: /sprite/src/lib/tcl/RCS/tcl.h,v 1.35 90/04/18 16:05:56 ouster Exp $ SPRITE (Berkeley)
        !            17:  */
        !            18: 
        !            19: #ifndef _TCL
        !            20: #define _TCL
        !            21: 
        !            22: /*
        !            23:  * Data structures defined opaquely in this module.  The definitions
        !            24:  * below just provide dummy types.  A few fields are made visible in
        !            25:  * Tcl_Interp structures, namely those for returning string values.
        !            26:  * Note:  any change to the Tcl_Interp definition below must be mirrored
        !            27:  * in the "real" definition in tclInt.h.
        !            28:  */
        !            29: 
        !            30: typedef struct Tcl_Interp{
        !            31:     char *result;              /* Points to result string returned by last
        !            32:                                 * command. */
        !            33:     int dynamic;               /* Non-zero means result is dynamically-
        !            34:                                 * allocated and must be freed by Tcl_Eval
        !            35:                                 * before executing the next command. */
        !            36:     int errorLine;             /* When TCL_ERROR is returned, this gives
        !            37:                                 * the line number within the command where
        !            38:                                 * the error occurred (1 means first line). */
        !            39: } Tcl_Interp;
        !            40: 
        !            41: typedef int *Tcl_Trace;
        !            42: typedef int *Tcl_CmdBuf;
        !            43: 
        !            44: /*
        !            45:  * When a TCL command returns, the string pointer interp->result points to
        !            46:  * a string containing return information from the command.  In addition,
        !            47:  * the command procedure returns an integer value, which is one of the
        !            48:  * following:
        !            49:  *
        !            50:  * TCL_OK              Command completed normally;  interp->result contains
        !            51:  *                     the command's result.
        !            52:  * TCL_ERROR           The command couldn't be completed successfully;
        !            53:  *                     interp->result describes what went wrong.
        !            54:  * TCL_RETURN          The command requests that the current procedure
        !            55:  *                     return;  interp->result contains the procedure's
        !            56:  *                     return value.
        !            57:  * TCL_BREAK           The command requests that the innermost loop
        !            58:  *                     be exited;  interp->result is meaningless.
        !            59:  * TCL_CONTINUE                Go on to the next iteration of the current loop;
        !            60:  *                     interp->result is meaninless.
        !            61:  */
        !            62: 
        !            63: #define TCL_OK         0
        !            64: #define TCL_ERROR      1
        !            65: #define TCL_RETURN     2
        !            66: #define TCL_BREAK      3
        !            67: #define TCL_CONTINUE   4
        !            68: 
        !            69: #define TCL_RESULT_SIZE 199
        !            70: 
        !            71: /*
        !            72:  * Flag values passed to Tcl_Eval (see the man page for details;  also
        !            73:  * see tclInt.h for additional flags that are only used internally by
        !            74:  * Tcl):
        !            75:  */
        !            76: 
        !            77: #define TCL_BRACKET_TERM       1
        !            78: 
        !            79: /*
        !            80:  * Flag value passed to Tcl_RecordAndEval to request no evaluation
        !            81:  * (record only).
        !            82:  */
        !            83: 
        !            84: #define TCL_NO_EVAL            -1
        !            85: 
        !            86: /*
        !            87:  * Flag values passed to Tcl_Return (see the man page for details):
        !            88:  */
        !            89: 
        !            90: #define TCL_STATIC     0
        !            91: #define TCL_DYNAMIC    1
        !            92: #define TCL_VOLATILE   2
        !            93: 
        !            94: #ifndef _CLIENTDATA
        !            95: typedef int *ClientData;
        !            96: #define _CLIENTDATA
        !            97: #endif
        !            98: 
        !            99: /*
        !           100:  * Exported Tcl procedures:
        !           101:  */
        !           102: 
        !           103: typedef int (*Tcl_Cmdfn)(ClientData, Tcl_Interp *, int, char **);
        !           104: typedef void (*Tcl_Tracefn)(ClientData, Tcl_Interp *, int, char *, Tcl_Cmdfn, ClientData, int, char **);
        !           105: extern char *          Tcl_AssembleCmd(Tcl_CmdBuf, char *);
        !           106: extern void            Tcl_AddErrorInfo(Tcl_Interp *, char *);
        !           107: extern char            Tcl_Backslash(char *, int *);
        !           108: extern char *          Tcl_Concat(int, char **);
        !           109: extern Tcl_CmdBuf      Tcl_CreateCmdBuf(void);
        !           110: extern void            Tcl_CreateCommand(Tcl_Interp *, char *, Tcl_Cmdfn, ClientData, void (*)(ClientData));
        !           111: extern Tcl_Interp *    Tcl_CreateInterp(void);
        !           112: extern Tcl_Trace       Tcl_CreateTrace(Tcl_Interp *, int, Tcl_Tracefn, ClientData);
        !           113: extern void            Tcl_DeleteCmdBuf(Tcl_CmdBuf);
        !           114: extern void            Tcl_DeleteCommand(Tcl_Interp *, char *);
        !           115: extern void            Tcl_DeleteInterp(Tcl_Interp *);
        !           116: extern void            Tcl_DeleteTrace(Tcl_Interp *, Tcl_Trace);
        !           117: extern int             Tcl_Eval(Tcl_Interp *, char *, int, char **);
        !           118: extern int             Tcl_Expr(Tcl_Interp *, char *, int *);
        !           119: extern char *          Tcl_GetVar(Tcl_Interp *, char *, int);
        !           120: extern char *          Tcl_Merge(int, char **);
        !           121: extern char *          Tcl_ParseVar(Tcl_Interp *, char *, char **);
        !           122: extern int             Tcl_RecordAndEval(Tcl_Interp *, char *, int);
        !           123: extern void            Tcl_Return(Tcl_Interp *, char *, int);
        !           124: extern void            Tcl_SetVar(Tcl_Interp *, char *, char *, int);
        !           125: extern int             Tcl_SplitList(Tcl_Interp *, char *, int *, char ***);
        !           126: extern int             Tcl_StringMatch(char *, char *);
        !           127: extern char *          Tcl_TildeSubst(Tcl_Interp *, char *);
        !           128: extern void            Tcl_WatchInterp(Tcl_Interp *, void (*)(void), ClientData);
        !           129: 
        !           130: /*
        !           131:  * Built-in Tcl command procedures:
        !           132:  */
        !           133: 
        !           134: extern int             Tcl_BreakCmd(ClientData , Tcl_Interp *, int , char **);
        !           135: extern int             Tcl_CaseCmd(ClientData , Tcl_Interp *, int , char **);
        !           136: extern int             Tcl_CatchCmd(ClientData , Tcl_Interp *, int , char **);
        !           137: extern int             Tcl_ConcatCmd(ClientData , Tcl_Interp *, int , char **);
        !           138: extern int             Tcl_ContinueCmd(ClientData , Tcl_Interp *, int , char **);
        !           139: extern int             Tcl_ErrorCmd(ClientData , Tcl_Interp *, int , char **);
        !           140: extern int             Tcl_EvalCmd(ClientData , Tcl_Interp *, int , char **);
        !           141: extern int             Tcl_ExecCmd(ClientData , Tcl_Interp *, int , char **);
        !           142: extern int             Tcl_ExprCmd(ClientData , Tcl_Interp *, int , char **);
        !           143: extern int             Tcl_FileCmd(ClientData , Tcl_Interp *, int , char **);
        !           144: extern int             Tcl_ForCmd(ClientData , Tcl_Interp *, int , char **);
        !           145: extern int             Tcl_ForeachCmd(ClientData , Tcl_Interp *, int , char **);
        !           146: extern int             Tcl_FormatCmd(ClientData , Tcl_Interp *, int , char **);
        !           147: extern int             Tcl_GlobCmd(ClientData , Tcl_Interp *, int , char **);
        !           148: extern int             Tcl_GlobalCmd(ClientData , Tcl_Interp *, int , char **);
        !           149: extern int             Tcl_HistoryCmd(ClientData , Tcl_Interp *, int , char **);
        !           150: extern int             Tcl_IfCmd(ClientData , Tcl_Interp *, int , char **);
        !           151: extern int             Tcl_InfoCmd(ClientData , Tcl_Interp *, int , char **);
        !           152: extern int             Tcl_IndexCmd(ClientData , Tcl_Interp *, int , char **);
        !           153: extern int             Tcl_LengthCmd(ClientData , Tcl_Interp *, int , char **);
        !           154: extern int             Tcl_ListCmd(ClientData , Tcl_Interp *, int , char **);
        !           155: extern int             Tcl_PrintCmd(ClientData , Tcl_Interp *, int , char **);
        !           156: extern int             Tcl_ProcCmd(ClientData , Tcl_Interp *, int , char **);
        !           157: extern int             Tcl_RangeCmd(ClientData , Tcl_Interp *, int , char **);
        !           158: extern int             Tcl_RenameCmd(ClientData , Tcl_Interp *, int , char **);
        !           159: extern int             Tcl_ReturnCmd(ClientData , Tcl_Interp *, int , char **);
        !           160: extern int             Tcl_ScanCmd(ClientData , Tcl_Interp *, int , char **);
        !           161: extern int             Tcl_SetCmd(ClientData , Tcl_Interp *, int , char **);
        !           162: extern int             Tcl_SourceCmd(ClientData , Tcl_Interp *, int , char **);
        !           163: extern int             Tcl_StringCmd(ClientData , Tcl_Interp *, int , char **);
        !           164: extern int             Tcl_TimeCmd(ClientData , Tcl_Interp *, int , char **);
        !           165: extern int             Tcl_UplevelCmd(ClientData , Tcl_Interp *, int , char **);
        !           166: 
        !           167: /*
        !           168:  * Miscellaneous declarations (to allow Tcl to be used stand-alone,
        !           169:  * without the rest of Sprite).
        !           170:  */
        !           171: 
        !           172: #ifndef NULL
        !           173: #define NULL 0
        !           174: #endif
        !           175: 
        !           176: #endif _TCL

unix.superglobalmegacorp.com

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