Module:Utils: Difference between revisions
Jump to navigation
Jump to search
Created page with "local _m = {} --- Return a if not `nil` or the empty string, or b otherwise _m._def = function(a, b) return (a ~= nil and a ~= "") and a or b end --- Extracts the argument from all the reasonable ways an argument may have been passed _m._a = function (x) if type(x) ~= "table" then return x end -- Did we get a frame if type(x.args) == "table" then return x.args[1] end -- Also support passing the argument in a table return x[1] end return _m" |
No edit summary |
||
| Line 2: | Line 2: | ||
--- Return a if not `nil` or the empty string, or b otherwise | --- Return a if not `nil` or the empty string, or b otherwise | ||
_m. | _m.def = function(a, b) | ||
return (a ~= nil and a ~= "") and a or b | return (a ~= nil and a ~= "") and a or b | ||
end | end | ||
Revision as of 14:25, 5 September 2025
Utility functions to help creating modules
def(value, default)
- Returns
valueif it is notnilor"", anddefaultotherwise
_a(arg)
- Extracts the argument from the common ways mediawiki passes arguments to modules:
- if
argis not a table, it is returned as is (Called from Lua like a function) - if
argis a table and that table has aargsfield,arg.args[1]is returned (Called from MediaWiki’s {{#invoke:}} parser function) - if
argis a table but doesn’t contain anargsfield,args[1]is returned (Called with a table as an argument list[1])
- if
date(y, m, d, short = false)
- Formats a date.
- If
shortis set totrue, uses shortened months name instead of full length month names.
- ↑ Some mediawiki functions do that, idk why — Annwan
local _m = {}
--- Return a if not `nil` or the empty string, or b otherwise
_m.def = function(a, b)
return (a ~= nil and a ~= "") and a or b
end
--- Extracts the argument from all the reasonable ways an argument may have been passed
_m._a = function (x)
if type(x) ~= "table" then
return x
end
-- Did we get a frame
if type(x.args) == "table" then return x.args[1] end
-- Also support passing the argument in a table
return x[1]
end
return _m