Jump to content

Module:CallAssert/doc

From Wikipedia, the free encyclopedia
This is an old revision of this page, as edited by Dinoguy1000 (talk | contribs) at 23:42, 15 November 2020 (this module is used on almost 200k pages, including system messages; this is inconsistent with an alpha rating (I have no opinion if the rating or the level of usage is "more" "correct", though changing the rating is considerably simpler and (ideally) less controversial than changing the level of usage)). The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.

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

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'.