-- Sample Module demonstrating how to access arguments.-- For more about the Frame object, see http://www.mediawiki.org/wiki/Extension:Scribunto/Lua_reference_manual#Frame_object-- Unit tests at Module:BananasArgs/testcaseslocalp={}localconverter=require("Module:Numeral converter")-- No arguments, used like: {{#invoke:BananasArgs|hello_world}}functionp.hello_world()return"سلام، دنیا!"end-- One argument, used like: {{#invoke:BananasArgs|hello|Fred}} functionp.hello(frame)localname=frame.args[1]-- in this example, args[1] is the word Fred return"سلام، "..name.."!"-- .. name .. replace by the word Fredend-- Two arguments, used like: {{#invoke:BananasArgs|add|5|3}}functionp.add(frame)localnum1=tonumber(frame.args[1])localnum2=tonumber(frame.args[2])returnconverter.convert("fa",num1+num2)end-- Named arguments, used like: {{#invoke:BananasArgs|count_fruit|bananas=5|apples=3}}functionp.count_fruit(frame)localnum_bananas=converter.convert("fa",frame.args.bananas)localnum_apples=converter.convert("fa",frame.args.apples)return'من '..num_bananas..' موز و '..num_apples..' سیب دارم'end-- Mixing regular args with named args and optional named args-- Used like: {{#invoke:BananasArgs|has_fruit|Fred|bananas=5|cherries=7}}functionp.has_fruit(frame)localname=frame.args[1]localnum_bananas=converter.convert("fa",frame.args.bananas)localnum_apples=converter.convert("fa",frame.args.apples)localnum_cherries=converter.convert("fa",frame.args.cherries)localresult=name..' دارد:'ifnum_bananasthenresult=result..' '..num_bananas..' موز'endifnum_applesthenresult=result..' '..num_apples..' سیب'endifnum_cherriesthenresult=result..' '..num_cherries..' گیلاس'endreturnresultend-- Iterating over args, used like: {{#invoke:BananasArgs|custom_fruit|pineapples=10|kiwis=5}}functionp.custom_fruit(frame)localresult='من دارم:'forname,valueinpairs(frame.args)doresult=result..' '..converter.convert("fa",value)..' '..nameendreturnresultend-- Iterating over args with separate mandatory args-- Used like: {{#invoke:BananasArgs|custom_fruit_2|Fred|pineapples=10|kiwis=5}}functionp.custom_fruit_2(frame)localname=frame.args[1]localresult=name..' دارد:'forname,valueinpairs(frame.args)doifname~=1thenresult=result..' '..converter.convert("fa",value)..' '..nameendendreturnresultendreturnp