Manual Pages for UNIX Darwin command on man Tcl_WrongNumArgs
MyWebUniversity

Manual Pages for UNIX Darwin command on man Tcl_WrongNumArgs

TclWrongNumArgs(3) Tcl Library Procedures TclWrongNumArgs(3)

NAME

TclWrongNumArgs - generate standard error message for wrong number of

arguments

SYNOPSIS

##iinncclluuddee <>

TTccllWWrroonnggNNuummAArrggss(interp, objc, objv, message) AARRGGUUMMEENNTTSS TclInterp interp (in) Interpreter in which error will be reported: error message gets stored in its result object. int objc (in) Number of leading arguments from

objv to include in error mes-

sage. TclObj *CONST objv[] (in) Arguments to command that had the wrong number of arguments. CONST char *message (in) Additional error information to print after leading arguments from objv. This typically gives the acceptable syntax of the command. This argument may be NULL.

DESCRIPTION

TTccllWWrroonnggNNuummAArrggss is a utility procedure that is invoked by command pro-

cedures when they discover that they have received the wrong number of arguments. TTccllWWrroonnggNNuummAArrggss generates a standard error message and stores it in the result object of interp. The message includes the

objc initial elements of objv plus message. For example, if objv con-

sists of the values ffoooo and bbaarr, objc is 1, and message is ``ffiilleeNNaammee ccoouunntt'' then interp's result object will be set to the following string:

wrong # args: should be "foo fileName count"

If objc is 2, the result will be set to the following string:

wrong # args: should be "foo bar fileName count"

Objc is usually 1, but may be 2 or more for commands like ssttrriinngg and the Tk widget commands, which use the first argument as a subcommand.

Some of the objects in the objv array may be abbreviations for a sub-

command. The command TTccllGGeettIInnddeexxFFrroommOObbjj will convert the abbreviated string object into an indexObject. If an error occurs in the parsing of the subcommand we would like to use the full subcommand name rather than the abbreviation. If the TTccllWWrroonnggNNuummAArrggss command finds any indexObjects in the objv array it will use the full subcommand name in the error message instead of the abbreviated name that was originally passed in. Using the above example, lets assume that bar is actually an abbreviation for barfly and the object is now an indexObject because it was passed to TTccllGGeettIInnddeexxFFrroommOObbjj. In this case the error message would be:

wrong # args: should be "foo barfly fileName count"

SEE ALSO

TclGetIndexFromObj KKEEYYWWOORRDDSS command, error message, wrong number of arguments Tcl 8.0 TclWrongNumArgs(3)




Contact us      |      About us      |      Term of use      |       Copyright © 2000-2019 MyWebUniversity.com ™