diff options
author | Roberto Ierusalimschy <roberto@inf.puc-rio.br> | 2018-12-10 13:46:03 -0200 |
---|---|---|
committer | Roberto Ierusalimschy <roberto@inf.puc-rio.br> | 2018-12-10 13:46:03 -0200 |
commit | 46beca5bed8a7700b18100fe48a78373be5055f9 (patch) | |
tree | 499de35c048605434d9adb7ace964adf673041ac /manual | |
parent | 28d829c86712ce5bc453feccc5129a32f78d80c0 (diff) | |
download | lua-46beca5bed8a7700b18100fe48a78373be5055f9.tar.gz lua-46beca5bed8a7700b18100fe48a78373be5055f9.tar.bz2 lua-46beca5bed8a7700b18100fe48a78373be5055f9.zip |
Better error messages for some polymorphic functions
New auxiliary functions/macros 'luaL_argexpected'/'luaL_typeerror'
ease the creation of error messages such as
bad argument #2 to 'setmetatable' (nil or table expected, got boolean)
(The novelty being the "got boolean" part...)
Diffstat (limited to 'manual')
-rw-r--r-- | manual/manual.of | 26 |
1 files changed, 26 insertions, 0 deletions
diff --git a/manual/manual.of b/manual/manual.of index 8b5e5d93..0e8e3d72 100644 --- a/manual/manual.of +++ b/manual/manual.of | |||
@@ -4979,6 +4979,19 @@ This function never returns. | |||
4979 | 4979 | ||
4980 | } | 4980 | } |
4981 | 4981 | ||
4982 | @APIEntry{ | ||
4983 | void luaL_argexpected (lua_State *L, | ||
4984 | int cond, | ||
4985 | int arg, | ||
4986 | const char *tname);| | ||
4987 | @apii{0,0,v} | ||
4988 | |||
4989 | Checks whether @id{cond} is true. | ||
4990 | If it is not, raises an error about the type of the argument @id{arg} | ||
4991 | with a standard message @seeF{luaL_typeerror}. | ||
4992 | |||
4993 | } | ||
4994 | |||
4982 | @APIEntry{typedef struct luaL_Buffer luaL_Buffer;| | 4995 | @APIEntry{typedef struct luaL_Buffer luaL_Buffer;| |
4983 | 4996 | ||
4984 | Type for a @def{string buffer}. | 4997 | Type for a @def{string buffer}. |
@@ -5713,6 +5726,19 @@ to start the traceback. | |||
5713 | 5726 | ||
5714 | } | 5727 | } |
5715 | 5728 | ||
5729 | @APIEntry{const char *luaL_typeerror (lua_State *L, | ||
5730 | int arg, | ||
5731 | const char *tname);| | ||
5732 | @apii{0,0,v} | ||
5733 | |||
5734 | Raises a type error for argument @id{arg} | ||
5735 | of the @N{C function} that called it, | ||
5736 | using a standard message; | ||
5737 | @id{tname} is a @Q{name} for the expected type. | ||
5738 | This function never returns. | ||
5739 | |||
5740 | } | ||
5741 | |||
5716 | @APIEntry{const char *luaL_typename (lua_State *L, int index);| | 5742 | @APIEntry{const char *luaL_typename (lua_State *L, int index);| |
5717 | @apii{0,0,-} | 5743 | @apii{0,0,-} |
5718 | 5744 | ||