Posted to tcl by mjanssen at Fri May 04 09:33:14 GMT 2007view raw
- /*
- *----------------------------------------------------------------------
- *
- * Tcl_ModeObjCmd --
- *
- *----------------------------------------------------------------------
- */
- /* ARGSUSED */
- int
- Tcl_ModeObjCmd(
- ClientData dummy, /* Not used. */
- Tcl_Interp *interp, /* Current interpreter. */
- int objc, /* Number of arguments. */
- Tcl_Obj *const objv[]) /* Argument objects. */
- {
- Tcl_Channel chan; /* The channel to puts on. */
- const char *channelId; /* Name of channel for puts. */
- int mode; /* Mode in which channel is opened. */
- if (objc != 2) {
- Tcl_WrongNumArgs(interp, 1, objv, "channelId");
- return TCL_ERROR;
- }
- channelId = Tcl_GetString(objv[1]);
- chan = Tcl_GetChannel(interp, channelId, &mode);
- if (chan == (Tcl_Channel) NULL) {
- return TCL_ERROR;
- }
- if ((mode & TCL_READABLE) != 0) {
- Tcl_AppendElement(interp, "r");
- }
- if ((mode & TCL_WRITABLE) != 0) {
- Tcl_AppendElement(interp, "w");
- }
- return TCL_OK;
- }