⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 tclint.h

📁 tcl源码详细资料
💻 H
📖 第 1 页 / 共 3 页
字号:
 * Data structures related to command parsing.   These are used in * tclParse.c and its clients. *---------------------------------------------------------------- *//* * The following data structure is used by various parsing procedures * to hold information about where to store the results of parsing * (e.g. the substituted contents of a quoted argument, or the result * of a nested command).  At any given time, the space available * for output is fixed, but a procedure may be called to expand the * space available if the current space runs out. */typedef struct ParseValue {    char *buffer;		/* Address of first character in				 * output buffer. */    char *next;			/* Place to store next character in				 * output buffer. */    char *end;			/* Address of the last usable character				 * in the buffer. */    void (*expandProc) _ANSI_ARGS_((struct ParseValue *pvPtr, int needed));				/* Procedure to call when space runs out;				 * it will make more space. */    ClientData clientData;	/* Arbitrary information for use of				 * expandProc. */} ParseValue;/* * A table used to classify input characters to assist in parsing * Tcl commands.  The table should be indexed with a signed character * using the CHAR_TYPE macro.  The character may have a negative * value. */extern char tclTypeTable[];#define CHAR_TYPE(c) (tclTypeTable+128)[c]/* * Possible values returned by CHAR_TYPE: * * TCL_NORMAL -		All characters that don't have special significance *			to the Tcl language. * TCL_SPACE -		Character is space, tab, or return. * TCL_COMMAND_END -	Character is newline or null or semicolon or *			close-bracket. * TCL_QUOTE -		Character is a double-quote. * TCL_OPEN_BRACKET -	Character is a "[". * TCL_OPEN_BRACE -	Character is a "{". * TCL_CLOSE_BRACE -	Character is a "}". * TCL_BACKSLASH -	Character is a "\". * TCL_DOLLAR -		Character is a "$". */#define TCL_NORMAL		0#define TCL_SPACE		1#define TCL_COMMAND_END		2#define TCL_QUOTE		3#define TCL_OPEN_BRACKET	4#define TCL_OPEN_BRACE		5#define TCL_CLOSE_BRACE		6#define TCL_BACKSLASH		7#define TCL_DOLLAR		8/* * Additional flags passed to Tcl_Eval.  See tcl.h for other flags to * Tcl_Eval;  these ones are only used internally by Tcl. * * TCL_RECORD_BOUNDS	Tells Tcl_Eval to record information in the *			evalFirst and evalLast fields for each command *			executed directly from the string (top-level *			commands and those from command substitution). */#define TCL_RECORD_BOUNDS	0x100/* * Maximum number of levels of nesting permitted in Tcl commands. */#define MAX_NESTING_DEPTH	100/* * Variables shared among Tcl modules but not used by the outside * world: */extern char *		tclRegexpError;/* *---------------------------------------------------------------- * Procedures shared among Tcl modules but not used by the outside * world: *---------------------------------------------------------------- */extern void		panic _ANSI_ARGS_((char *format, ...));extern regexp *		TclCompileRegexp _ANSI_ARGS_((Tcl_Interp *interp,			    char *string));extern void		TclCopyAndCollapse _ANSI_ARGS_((int count, char *src,			    char *dst));extern void		TclDeleteVars _ANSI_ARGS_((Interp *iPtr,			    Tcl_HashTable *tablePtr));extern void		TclExpandParseValue _ANSI_ARGS_((ParseValue *pvPtr,			    int needed));extern int		TclFindElement _ANSI_ARGS_((Tcl_Interp *interp,			    char *list, char **elementPtr, char **nextPtr,			    int *sizePtr, int *bracePtr));extern Proc *		TclFindProc _ANSI_ARGS_((Interp *iPtr,			    char *procName));extern int		TclGetFrame _ANSI_ARGS_((Tcl_Interp *interp,			    char *string, CallFrame **framePtrPtr));extern int		TclGetListIndex _ANSI_ARGS_((Tcl_Interp *interp,			    char *string, long *indexPtr));extern int		TclGetOpenFile _ANSI_ARGS_((Tcl_Interp *interp,			    char *string, OpenFile **filePtrPtr));extern Proc *		TclIsProc _ANSI_ARGS_((Command *cmdPtr));extern void		TclMakeFileTable _ANSI_ARGS_((Interp *iPtr,			    int index));extern int		TclParseBraces _ANSI_ARGS_((Tcl_Interp *interp,			    char *string, char **termPtr, ParseValue *pvPtr));extern int		TclParseNestedCmd _ANSI_ARGS_((Tcl_Interp *interp,			    char *string, int flags, char **termPtr,			    ParseValue *pvPtr));extern int		TclParseQuotes _ANSI_ARGS_((Tcl_Interp *interp,			    char *string, int termChar, int flags,			    char **termPtr, ParseValue *pvPtr));extern int		TclParseWords _ANSI_ARGS_((Tcl_Interp *interp,			    char *string, int flags, int maxWords,			    char **termPtr, int *argcPtr, char **argv,			    ParseValue *pvPtr));extern void		TclSetupEnv _ANSI_ARGS_((Tcl_Interp *interp));extern char *		TclWordEnd _ANSI_ARGS_((char *start, int nested));/* *---------------------------------------------------------------- * Command procedures in the generic core: *---------------------------------------------------------------- */extern int	Tcl_AppendCmd _ANSI_ARGS_((ClientData clientData,		    Tcl_Interp *interp, int argc, char **argv));extern int	Tcl_ArrayCmd _ANSI_ARGS_((ClientData clientData,		    Tcl_Interp *interp, int argc, char **argv));extern int	Tcl_BreakCmd _ANSI_ARGS_((ClientData clientData,		    Tcl_Interp *interp, int argc, char **argv));extern int	Tcl_CaseCmd _ANSI_ARGS_((ClientData clientData,		    Tcl_Interp *interp, int argc, char **argv));extern int	Tcl_CatchCmd _ANSI_ARGS_((ClientData clientData,		    Tcl_Interp *interp, int argc, char **argv));extern int	Tcl_ConcatCmd _ANSI_ARGS_((ClientData clientData,		    Tcl_Interp *interp, int argc, char **argv));extern int	Tcl_ContinueCmd _ANSI_ARGS_((ClientData clientData,		    Tcl_Interp *interp, int argc, char **argv));extern int	Tcl_ErrorCmd _ANSI_ARGS_((ClientData clientData,		    Tcl_Interp *interp, int argc, char **argv));extern int	Tcl_EvalCmd _ANSI_ARGS_((ClientData clientData,		    Tcl_Interp *interp, int argc, char **argv));extern int	Tcl_ExprCmd _ANSI_ARGS_((ClientData clientData,		    Tcl_Interp *interp, int argc, char **argv));extern int	Tcl_ForCmd _ANSI_ARGS_((ClientData clientData,		    Tcl_Interp *interp, int argc, char **argv));extern int	Tcl_ForeachCmd _ANSI_ARGS_((ClientData clientData,		    Tcl_Interp *interp, int argc, char **argv));extern int	Tcl_FormatCmd _ANSI_ARGS_((ClientData clientData,		    Tcl_Interp *interp, int argc, char **argv));extern int	Tcl_GlobalCmd _ANSI_ARGS_((ClientData clientData,		    Tcl_Interp *interp, int argc, char **argv));extern int	Tcl_HistoryCmd _ANSI_ARGS_((ClientData clientData,		    Tcl_Interp *interp, int argc, char **argv));extern int	Tcl_IfCmd _ANSI_ARGS_((ClientData clientData,		    Tcl_Interp *interp, int argc, char **argv));extern int	Tcl_IncrCmd _ANSI_ARGS_((ClientData clientData,		    Tcl_Interp *interp, int argc, char **argv));extern int	Tcl_InfoCmd _ANSI_ARGS_((ClientData clientData,		    Tcl_Interp *interp, int argc, char **argv));extern int	Tcl_JoinCmd _ANSI_ARGS_((ClientData clientData,		    Tcl_Interp *interp, int argc, char **argv));extern int	Tcl_LappendCmd _ANSI_ARGS_((ClientData clientData,		    Tcl_Interp *interp, int argc, char **argv));extern int	Tcl_LindexCmd _ANSI_ARGS_((ClientData clientData,		    Tcl_Interp *interp, int argc, char **argv));extern int	Tcl_LinsertCmd _ANSI_ARGS_((ClientData clientData,		    Tcl_Interp *interp, int argc, char **argv));extern int	Tcl_LlengthCmd _ANSI_ARGS_((ClientData clientData,		    Tcl_Interp *interp, int argc, char **argv));extern int	Tcl_ListCmd _ANSI_ARGS_((ClientData clientData,		    Tcl_Interp *interp, int argc, char **argv));extern int	Tcl_LrangeCmd _ANSI_ARGS_((ClientData clientData,		    Tcl_Interp *interp, int argc, char **argv));extern int	Tcl_LreplaceCmd _ANSI_ARGS_((ClientData clientData,		    Tcl_Interp *interp, int argc, char **argv));extern int	Tcl_LsearchCmd _ANSI_ARGS_((ClientData clientData,		    Tcl_Interp *interp, int argc, char **argv));extern int	Tcl_LsortCmd _ANSI_ARGS_((ClientData clientData,		    Tcl_Interp *interp, int argc, char **argv));extern int	Tcl_ProcCmd _ANSI_ARGS_((ClientData clientData,		    Tcl_Interp *interp, int argc, char **argv));extern int	Tcl_RegexpCmd _ANSI_ARGS_((ClientData clientData,		    Tcl_Interp *interp, int argc, char **argv));extern int	Tcl_RegsubCmd _ANSI_ARGS_((ClientData clientData,		    Tcl_Interp *interp, int argc, char **argv));extern int	Tcl_RenameCmd _ANSI_ARGS_((ClientData clientData,		    Tcl_Interp *interp, int argc, char **argv));extern int	Tcl_ReturnCmd _ANSI_ARGS_((ClientData clientData,		    Tcl_Interp *interp, int argc, char **argv));extern int	Tcl_ScanCmd _ANSI_ARGS_((ClientData clientData,		    Tcl_Interp *interp, int argc, char **argv));extern int	Tcl_SetCmd _ANSI_ARGS_((ClientData clientData,		    Tcl_Interp *interp, int argc, char **argv));extern int	Tcl_SplitCmd _ANSI_ARGS_((ClientData clientData,		    Tcl_Interp *interp, int argc, char **argv));extern int	Tcl_StringCmd _ANSI_ARGS_((ClientData clientData,		    Tcl_Interp *interp, int argc, char **argv));extern int	Tcl_TraceCmd _ANSI_ARGS_((ClientData clientData,		    Tcl_Interp *interp, int argc, char **argv));extern int	Tcl_UnsetCmd _ANSI_ARGS_((ClientData clientData,		    Tcl_Interp *interp, int argc, char **argv));extern int	Tcl_UplevelCmd _ANSI_ARGS_((ClientData clientData,		    Tcl_Interp *interp, int argc, char **argv));extern int	Tcl_UpvarCmd _ANSI_ARGS_((ClientData clientData,		    Tcl_Interp *interp, int argc, char **argv));extern int	Tcl_WhileCmd _ANSI_ARGS_((ClientData clientData,		    Tcl_Interp *interp, int argc, char **argv));/* *---------------------------------------------------------------- * Command procedures in the UNIX core: *---------------------------------------------------------------- */extern int	Tcl_CdCmd _ANSI_ARGS_((ClientData clientData,		    Tcl_Interp *interp, int argc, char **argv));extern int	Tcl_CloseCmd _ANSI_ARGS_((ClientData clientData,		    Tcl_Interp *interp, int argc, char **argv));extern int	Tcl_EofCmd _ANSI_ARGS_((ClientData clientData,		    Tcl_Interp *interp, int argc, char **argv));extern int	Tcl_ExitCmd _ANSI_ARGS_((ClientData clientData,		    Tcl_Interp *interp, int argc, char **argv));extern int	Tcl_FileCmd _ANSI_ARGS_((ClientData clientData,		    Tcl_Interp *interp, int argc, char **argv));extern int	Tcl_FlushCmd _ANSI_ARGS_((ClientData clientData,		    Tcl_Interp *interp, int argc, char **argv));extern int	Tcl_GetsCmd _ANSI_ARGS_((ClientData clientData,		    Tcl_Interp *interp, int argc, char **argv));extern int	Tcl_GlobCmd _ANSI_ARGS_((ClientData clientData,		    Tcl_Interp *interp, int argc, char **argv));extern int	Tcl_OpenCmd _ANSI_ARGS_((ClientData clientData,		    Tcl_Interp *interp, int argc, char **argv));extern int	Tcl_PutsCmd _ANSI_ARGS_((ClientData clientData,		    Tcl_Interp *interp, int argc, char **argv));extern int	Tcl_PwdCmd _ANSI_ARGS_((ClientData clientData,		    Tcl_Interp *interp, int argc, char **argv));extern int	Tcl_ReadCmd _ANSI_ARGS_((ClientData clientData,		    Tcl_Interp *interp, int argc, char **argv));extern int	Tcl_SeekCmd _ANSI_ARGS_((ClientData clientData,		    Tcl_Interp *interp, int argc, char **argv));extern int	Tcl_SourceCmd _ANSI_ARGS_((ClientData clientData,		    Tcl_Interp *interp, int argc, char **argv));extern int	Tcl_TellCmd _ANSI_ARGS_((ClientData clientData,		    Tcl_Interp *interp, int argc, char **argv));extern int	Tcl_TimeCmd _ANSI_ARGS_((ClientData clientData,		    Tcl_Interp *interp, int argc, char **argv));#endif /* _TCLINT */#endif /* EXCLUDE_TCL */

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -