Mòdul:DemoArgs

De la Viquipèdia, l'enciclopèdia lliure
Icona de documentació de mòdul Documentació del mòdul [ mostra ] [ modifica el codi ] [ mostra l'historial ] [ refresca ]

Mòdul DemoArgs (codi · ús · discussió · proves · tests · casos prova | subpàgines · enllaços)

A continuació es mostra la documentació transclosa de la subpàgina /ús. [salta a la caixa de codi]


Mòdul per mostrar diferents formes d'usar arguments.

Vegeu abans (si ja no l'heu vist): Mòdul:Exemple.

Vegeu els resultats dels casos de prova a Mòdul Discussió:DemoArgs/tests.

-- Exemple de mostra sobre l'ús d'arguments.

local p = {}
 
-- Sense arguments, usat com: {{#invoke:DemoArgs|hola_tots}}
function p.hola_tots()
    return "Hola, món!"
end
 
-- Un argument, usat com: {{#invoke:DemoArgs|hola|Cesc}}
function p.hola(frame)
    local name = frame.args[1]
    return "Hola, " .. name .. "!"
end

-- Dos arguments, usat com: {{#invoke:DemoArgs|suma|5|3}}
function p.suma(frame)
    local num1 = tonumber(frame.args[1])
    local num2 = tonumber(frame.args[2])
    return num1 + num2
end

-- Arguments amb nom, usat com: {{#invoke:DemoArgs|tinc_fruita|pomes=5|peres=3}}
function p.tinc_fruita(frame)
    local num_pomes = frame.args['pomes']
    local num_peres = frame.args['peres']
    return 'Tinc ' .. num_pomes .. ' pomes i ' .. num_peres .. ' peres'
end

-- Barreja d'arguments normals, amb nom i opcionals
-- Usat com: {{#invoke:DemoArgs|tens_fruita|Cesc|bananas=5|cireres=7}}
function p.tens_fruita(frame)
    local nom = frame.args[1]
    local num_bananas = frame.args['bananas']
    local num_pomes = frame.args['pomes']
    local num_cireres = frame.args['cireres']
    
    local resultat = nom .. ' té:'
    if num_bananas then resultat = resultat .. ' ' .. num_bananas .. ' bananas' end
    if num_pomes then resultat = resultat .. ' ' .. num_pomes .. ' pomes' end
    if num_cireres then resultat = resultat .. ' ' .. num_cireres .. ' cireres' end
    return resultat
end

-- Iteració d'arguments, usat com: {{#invoke:DemoArgs|encarrega_fruita|pinyes=10|kiwis=5}}
function p.encarrega_fruita(frame)
    local resultat = 'Tinc:'
    for nom, valor in pairs(frame.args) do
        resultat = resultat .. ' ' .. valor .. ' ' .. nom
    end
    return resultat
end

-- Iteració d'arguments amb un obligatori
-- Usat com: {{#invoke:DemoArgs|encarrega_fruita_2|Cesc|pinyes=10|kiwis=5}}
function p.encarrega_fruita_2(frame)
    local nom = frame.args[1]
    local resultat = nom .. ' té:'
    for nom, valor in pairs(frame.args) do
        if nom ~= 1 then
            resultat = resultat .. ' ' .. valor .. ' ' .. nom
        end
    end
    return resultat
end

return p