Modulo:Sandbox/Ignazio Cannata: differenze tra le versioni
Vai alla navigazione
Vai alla ricerca
Contenuto cancellato Contenuto aggiunto
modifica uno |
modifica due |
||
Riga 11: | Riga 11: | ||
function p.ciao_nome1parent( frame ) |
function p.ciao_nome1parent( frame ) |
||
local debuglog -- qui non è necessario definire la variabile come una stringa vuota, perché non la useremo mai così com'è |
|||
local debuglog = '' |
|||
local args = frame:getParent().args |
local args = frame:getParent().args |
||
-- Lua è estremamente versatile e può ridefinire le sue variabili di volta in volta |
|||
-- args[1] potrebbe non essere compilato (nil) |
|||
local output -- creiamo la variabile locale output non definita (nil) |
|||
-- indichiamo al modulo di rifarsi a una stringa vuota se args[1] non esiste |
|||
output = args[1] or '' -- output è ora args[1] o, se non lo trova, una stringa vuota |
|||
output = " Ciao, " .. output .. "! Questo messaggio compare perché args2 è compilato: " -- concateno il nuovo messaggio al valore che output ha avuto finora |
|||
if args[1] and args[2] then |
if args[1] and args[2] then |
||
debuglog = " args[2] = " .. tostring(args[2]) |
debuglog = " args[2] = " .. tostring(args[2]) -- imposto ora debuglog |
||
output = output .. debuglog -- output è ora il messaggio impostato finora + debuglog |
|||
return output -- mi basta ritornare output che ora contiene tutto e non c'è possibilità di errori |
|||
elseif args[1] and not args[2] then |
elseif args[1] and not args[2] then |
||
return " Ciao, " .. args[1] .. " " |
return " Ciao, " .. args[1] .. " " |
||
end |
end |
||
end |
end |
Versione delle 13:20, 7 dic 2017
Intestazione: Modulo:Sandbox/Ignazio Cannata/man
require('Module:No globals')
local p = {}
function p.ciao( frame )
return " Ciao, Ignazio! "
end
function p.ciao_nome1( frame )
return " Ciao, " .. frame.args[1] .. "! " .. frame.args[2] .. "? "
end
function p.ciao_nome1parent( frame )
local debuglog -- qui non è necessario definire la variabile come una stringa vuota, perché non la useremo mai così com'è
local args = frame:getParent().args
-- Lua è estremamente versatile e può ridefinire le sue variabili di volta in volta
local output -- creiamo la variabile locale output non definita (nil)
output = args[1] or '' -- output è ora args[1] o, se non lo trova, una stringa vuota
output = " Ciao, " .. output .. "! Questo messaggio compare perché args2 è compilato: " -- concateno il nuovo messaggio al valore che output ha avuto finora
if args[1] and args[2] then
debuglog = " args[2] = " .. tostring(args[2]) -- imposto ora debuglog
output = output .. debuglog -- output è ora il messaggio impostato finora + debuglog
return output -- mi basta ritornare output che ora contiene tutto e non c'è possibilità di errori
elseif args[1] and not args[2] then
return " Ciao, " .. args[1] .. " "
end
end
function p.ciao_nome2( frame )
return " Ciao, " .. frame.args["nome"] .. "! " .. frame.args["saluto"] .. "? "
end
function p.ciao_nome2b( frame )
return " Ciao, " .. frame.args.nome .. "! " .. frame.args.saluto .. "? "
end
return p