Modul:Protect/dok
Utseende
Dette er dokumentasjonssiden for Modul:Protect
| Denne modulen brukes i systemmeldinger. Endringer bør først testes på undersidene /sandkasse eller /testtilfeller. Diskuter endringer på diskusjonssiden. |
This metamodule simplifies error handling in other modules. It transforms a function, which may throw an error, into a function, which returns a specified error message in that case.
Usage
[rediger kilde]local protect = require('Module:Protect')
local protectedFunc = protect(func, errFormat, options)
Arguments
[rediger kilde]func- Function to be transformed.
errFormat(default:'Error: %s')- Custom error message.
- Use
'%s'to include the message from a caught error.
options– optional table with the following fields:raw(default: false)- If true, then
errFormatwill be used as is, otherwise it will be wrapped inside a tag<strong class="error">.
- If true, then
removeLocation(default: true)- If true, removes location information from caught error messages.
Return value
[rediger kilde]The resulting protectedFunc is a function, which calls the original function func, passing all arguments to it, and returns all its return values. If func throws an error, the specified error message is returned instead.
Example
[rediger kilde]local protect = require('Module:Protect')
local p = {}
function p.main(frame)
if not frame.args[1] then
error('missing argument')
end
return frame.args[1]
end
p.main = protect(p.main)
return p
Invoking the main function without arguments will output: Error: missing argument