×
Create a new article
Write your page title here:
We currently have 223 articles on Farthest Frontier. Type your article name above or create one of the articles listed here!



    Farthest Frontier

    This is the documentation page for Module:LuaCall


    This module allows you to call any one single preinstalled Lua function, so that you don't need to write a module for one desired feature.

    Usage[edit source]

    Main[edit source]

    {{#invoke:LuaCall|main|arbitrary variables|parameters|functioncall}}

    The arbitrary variables are any key of your choice = any value of your choice. Values are interpreted as strings unless tonumber(value) isn't nil, i.e. numbers should be converted to the numeric type. No effort is made to interpret tables.

    The parameters all begin with reserved_, which arbitrary variable should use.

    • reserved_return sets which output from the function you want, and defaults to 1. For example, setting it to 2 for mw.ustring.gsub will return the number of replacements made.
    • reserved_debug - nonzero value forces display of a not particularly useful debug text

    The functioncall is written as some.function.name(a,b,c) where some.function.name means something in the Extension:Scribunto/Lua reference manual and a,b,c are the arbitrary variable names you've chosen.

    Examples[edit source]

    Main[edit source]

    • {{#invoke:LuaCall|main|a=test |b=7|string.rep(a,b)}} → test test test test test test test 
    • {{#invoke:LuaCall|main|pattern=(%a)|replace=%1.|string=I can't get no satisfaction|mw.ustring.gsub(string,pattern,replace)|reserved_return=1}} → I. c.a.n.'t. g.e.t. n.o. s.a.t.i.s.f.a.c.t.i.o.n.
    • {{#invoke:LuaCall|main|pattern=(%a)|replace=%1.|string=I can't get no satisfaction|mw.ustring.gsub(string,pattern,replace)|reserved_return=2}} → 22
    • {{#invoke:LuaCall|main|value=1.4512|math.ceil(value)}} → 2
    • {{#invoke:LuaCall|main|value=1.4512|math.modf(value)}} → 1
    • {{#invoke:LuaCall|main|value=1.4512|math.modf(value)|reserved_return=2}} → 0.4512
    • {{#invoke:LuaCall|main|mw.text.nowiki(s)|s={{URL|1=https://www.Amazon.com/}}}} → [[:Template:URL]]

    Call[edit source]

    • {{#invoke:LuaCall|call|string.format|%04x|127}} → 007f
    • {{#invoke:LuaCall|call|math.modf|1.4512}} → 1
    • {{#invoke:LuaCall|call|math.modf|1.4512|return=2}} → 1

    Errors[edit source]

    The module may generate script errors — whenever your call is not valid Lua code, you see the error you would normally have. For example,

    {{#invoke:LuaCall|main|value=1.4512|math.fmod(value)}}Lua error in Module:LuaCall at line 35: bad argument #2 to 'reserved_call' (number expected, got no value).

    because the second value is lacking. No effort is made to trap these.


    Cookies help us deliver our services. By using our services, you agree to our use of cookies.
    Cookies help us deliver our services. By using our services, you agree to our use of cookies.