Module:CallAssert/doc: Difference between revisions
Appearance
Content deleted Content added
m Removed unnecessary supercategory |
Added the page to Category:Module documentation pages |
||
Line 12: | Line 12: | ||
[[Category:Error-handling modules]] |
[[Category:Error-handling modules]] |
||
}}</includeonly> |
}}</includeonly> |
||
<noinclude> |
|||
[[Category:Module documentation pages]] |
|||
</noinclude> |
Latest revision as of 20:32, 29 August 2024
![]() | This Lua module is used in system messages, and on approximately 115,000 pages. Changes to it can cause immediate changes to the Wikipedia user interface. To avoid major disruption and server load, any changes should be tested in the module's /sandbox or /testcases subpages, or in your own module sandbox. The tested changes can be added to this page in a single edit. Please discuss changes on the talk page before implementing them. |
This metamodule provides function callAssert, which simplifies error checking by throwing an error if a given function returns nil or false. This is similar to the built-in function assert, but unlike it, callAssert itself calls the function, whose return value is to be checked. This allows it to include the function name and argument values in the error message.
Usage
[edit]local callAssert = require('Module:CallAssert') local result1, result2, etc = callAssert(func, 'funcName', ...)
callAssert
calls func(...)
and checks if the first returned value evaluates to true. If it does, then it returns all the returned values. If not, it throws an error with a message in the form 'funcName(argument_values) failed'
.