WrongNumArgs.3
上传用户:rrhhcc
上传日期:2015-12-11
资源大小:54129k
文件大小:3k
源码类别:

通讯编程

开发平台:

Visual C++

  1. '"
  2. '" Copyright (c) 1994-1997 Sun Microsystems, Inc.
  3. '"
  4. '" See the file "license.terms" for information on usage and redistribution
  5. '" of this file, and for a DISCLAIMER OF ALL WARRANTIES.
  6. '" 
  7. '" RCS: @(#) $Id: WrongNumArgs.3,v 1.5 2002/07/01 18:24:39 jenglish Exp $
  8. '" 
  9. .so man.macros
  10. .TH Tcl_WrongNumArgs 3 8.0 Tcl "Tcl Library Procedures"
  11. .BS
  12. .SH NAME
  13. Tcl_WrongNumArgs - generate standard error message for wrong number of arguments
  14. .SH SYNOPSIS
  15. .nf
  16. fB#include <tcl.h>fR
  17. .sp
  18. fBTcl_WrongNumArgsfR(fIinterp, objc, objv, messagefR)
  19. .SH ARGUMENTS
  20. .AS Tcl_Interp "*CONST objv[]"
  21. .AP Tcl_Interp interp in
  22. Interpreter in which error will be reported: error message gets stored
  23. in its result object.
  24. .AP int objc in
  25. Number of leading arguments from fIobjvfR to include in error
  26. message.
  27. .AP Tcl_Obj "*CONST objv[]" in
  28. Arguments to command that had the wrong number of arguments.
  29. .AP "CONST char" *message in
  30. Additional error information to print after leading arguments
  31. from fIobjvfR.  This typically gives the acceptable syntax
  32. of the command.  This argument may be NULL.
  33. .BE
  34. .SH DESCRIPTION
  35. .PP
  36. fBTcl_WrongNumArgsfR is a utility procedure that is invoked by
  37. command procedures when they discover that they have received the
  38. wrong number of arguments.  fBTcl_WrongNumArgsfR generates a
  39. standard error message and stores it in the result object of
  40. fIinterpfR.  The message includes the fIobjcfR initial
  41. elements of fIobjvfR plus fImessagefR.  For example, if
  42. fIobjvfR consists of the values fBfoofR and fBbarfR,
  43. fIobjcfR is 1, and fImessagefR is ``fBfileName countfR''
  44. then fIinterpfR's result object will be set to the following
  45. string:
  46. .CS
  47. wrong # args: should be "foo fileName count"
  48. .CE
  49. If fIobjcfR is 2, the result will be set to the following string:
  50. .CS
  51. wrong # args: should be "foo bar fileName count"
  52. .CE
  53. fIObjcfR is usually 1, but may be 2 or more for commands like
  54. fBstringfR and the Tk widget commands, which use the first argument
  55. as a subcommand.  
  56. .PP
  57. Some of the objects in the fIobjvfR array may be abbreviations for
  58. a subcommand.  The command
  59. fBTcl_GetIndexFromObjfR will convert the abbreviated string object
  60. into an fIindexObjectfR.  If an error occurs in the parsing of the
  61. subcommand we would like to use the full subcommand name rather than
  62. the abbreviation.  If the fBTcl_WrongNumArgsfR command finds any
  63. fIindexObjectsfR in the fIobjvfR array it will use the full subcommand
  64. name in the error message instead of the abbreviated name that was
  65. originally passed in.  Using the above example, lets assume that
  66. fIbarfR is actually an abbreviation for fIbarflyfR and the object
  67. is now an indexObject because it was passed to
  68. fBTcl_GetIndexFromObjfR.  In this case the error message would be:
  69. .CS
  70. wrong # args: should be "foo barfly fileName count"
  71. .CE
  72. .SH "SEE ALSO"
  73. Tcl_GetIndexFromObj
  74. .SH KEYWORDS
  75. command, error message, wrong number of arguments