Mòdul:SimpleArgs/Tests/SVals
A continuació es mostra la documentació transclosa de la subpàgina /ús. [salta a la caixa de codi]
Exemples
[modifica]Algunes de les funcions i mostrant errors.
Caràcter des de paràmetre amb comprovació del valor en una cadena
[modifica]En aquests exemples Pattern = 'abc'.
Char_Par |
---|
function p.Char_Par (frame)
local args = SA.GetArgs (frame)
local Char = SA.Char_Par (args, 'Char', 'abc', 'a')
return Char
end
|
{{#invoke: SimpleArgs/Tests/SVals|Char_Par|Char=a}}
-> a
RChar_Par |
---|
function p.RChar_Par (frame)
local args = SA.GetArgs (frame)
local Char = SA.RChar_Par (args, 'Char', 'abc')
return Char
end
|
{{#invoke: SimpleArgs/Tests/SVals|RChar_Par}}
-> Error de Lua: Char = No té un valor assignat.
{{#invoke: SimpleArgs/Tests/SVals|RChar_Par|Char=z}}
-> Error de Lua: Char = "z" no és cap dels caràcters de "abc".
RChar_Par |
---|
function p.RChar_Par_ESS (frame)
local args = SA.GetArgs (frame, true, true)
local Char = SA.RChar_Par (args, 'Char', 'abc')
if SA.Error.yes then return SA.MsgError() end
return Char
end
|
{{#invoke: SimpleArgs/Tests/SVals|RChar_Par_ESS|Char=z}}
-> Error de Lua: Char = "z" no és cap dels caràcters de "abc".
Número enter
[modifica]RPosInt_Par |
---|
function p.RPosInt_Par (frame)
local args = SA.GetArgs (frame)
local liminf = SA.PosInt_Par (args, 1)
local limsup = SA.PosInt_Par (args, 2)
local num = SA.RPosInt_Par (args, 3, liminf, limsup)
if SA.Error.yes then return SA.MsgError() end
return num
end
|
{{#invoke: SimpleArgs/Tests/SVals|RPosInt_Par|1|6|5}}
-> 5
{{#invoke: SimpleArgs/Tests/SVals|RPosInt_Par|10|60|5}}
-> Error de Lua: #3 = 5 és menor de 10.
{{#invoke: SimpleArgs/Tests/SVals|RPosInt_Par|1|6|8}}
-> Error de Lua: #3 = 8 és major de 6.
{{#invoke: SimpleArgs/Tests/SVals|RPosInt_Par|1|6|5.3}}
-> Error de Lua: #3 = 5,3 no és un número enter.
Mida, html
[modifica]RSize_Par |
---|
function p.RSize_Par (frame)
local args = SA.GetArgs (frame)
local size = SA.RSize_Par (args, 1, true, {perc={20,100}, em={12,119}, px={200,1900}})
if SA.Error.yes then return SA.MsgError() end
return size
end
|
{{#invoke: SimpleArgs/Tests/SVals|RSize_Par|12em}}
-> 12em
{{#invoke: SimpleArgs/Tests/SVals|RSize_Par|190px}}
-> Error de Lua: #1 = 190px no està entre 200px i 1900px.
{{#invoke: SimpleArgs/Tests/SVals|RSize_Par|12me}}
-> Error de Lua: #1 = Unitat no vàlida (me).
{{#invoke: SimpleArgs/Tests/SVals|RSize_Par|50}}
-> Error de Lua: #1 = Es requereix la unitat de mida (em, px o %).
Alineació
[modifica]RHAlign_Par |
---|
function p.RHAlign_Par (frame)
local args = SA.GetArgs (frame)
local align = SA.RHAlign_Par (args, 1)
if SA.Error.yes then return SA.MsgError() end
return align
end
|
{{#invoke: SimpleArgs/Tests/SVals|RHAlign_Par|esquerra}}
-> left
{{#invoke: SimpleArgs/Tests/SVals|RHAlign_Par|dreta}}
-> right
{{#invoke: SimpleArgs/Tests/SVals|RHAlign_Par|dalt}}
-> Error de Lua: #1 = Alineament invàlid (dalt). Valors possibles: left/esquerra/esquerre, right/dreta/dret, center/centre.
Valor booleà
[modifica]RBool_Par |
---|
function p.RBool_Par (frame)
local args = SA.GetArgs (frame)
local Bool = SA.RBool_Par (args, 1)
if SA.Error.yes then return SA.MsgError() end
return Bool
end
|
{{#invoke: SimpleArgs/Tests/SVals|RBool_Par|sí}}
-> true
{{#invoke: SimpleArgs/Tests/SVals|RBool_Par|no}}
-> false
{{#invoke: SimpleArgs/Tests/SVals|RBool_Par|yes}}
-> true
{{#invoke: SimpleArgs/Tests/SVals|RBool_Par|potser}}
-> Error de Lua: #1 = Booleà invàlid (potser). Valors possibles: sí/s/yes/y/true/veritat/t/1, no/n/false/fals/f/0.
{{#invoke: SimpleArgs/Tests/SVals|RBool_Par}}
-> Error de Lua: #1 = No té un valor assignat.
Paraula o índex en la taula
[modifica]S'utilitza una taula amb els valors {'One','Two'}.
StrChkTab_Par |
---|
function p.StrChkTab_Par (frame)
local args = SA.GetArgs (frame)
local Str = SA.StrChkTab_Par (args, 1, {'One','Two'})
if SA.Error.yes then return SA.MsgError() end
return Str
end
|
{{#invoke: SimpleArgs/Tests/SVals|StrChkTab_Par|one}}
-> One
StrIdxChkTab_Par |
---|
function p.StrIdxChkTab_Par (frame)
local args = SA.GetArgs (frame)
local Idx = SA.StrIdxChkTab_Par (args, 1, {'One','Two'})
if SA.Error.yes then return SA.MsgError() end
return Idx
end
|
{{#invoke: SimpleArgs/Tests/SVals|StrIdxChkTab_Par|one}}
-> 1
{{#invoke: SimpleArgs/Tests/SVals|StrIdxChkTab_Par|Three}}
-> Error de Lua: #1 = "Three" no s'ha trobat en "One, Two".
Índex des de paràmetre amb comprovació del valor en una taula
[modifica]En aquests exemples els valors vàlids són: {'Earth', 'World'}, 'USA'.
StrIdxChkTab |
---|
function p.RStrIdxChkTab (frame)
local args = SA.GetArgs (frame)
local Idx1 = SA.StrIdxChkTab (args, 'Idx1', true, 0, {'Earth', 'World'}, 'USA')
local Idx2 = SA.StrIdxChkTab (args, 'Idx2', false, 0, {'Earth', 'World'}, 'USA')
return Idx1..', '..Idx2
end
|
{{#invoke: SimpleArgs/Tests/SVals|RStrIdxChkTab|Idx1=USA|Idx2=z}}}
-> 2, 0
{{#invoke: SimpleArgs/Tests/SVals|RStrIdxChkTab|Idx1=USA|Idx2=World}}
-> 2, 1
StrIdxChkTabE |
---|
function p.RStrIdxChkTabE (frame)
local args = SA.GetArgs (frame)
local Idx1 = SA.StrIdxChkTabE (args, 'Idx1', true, 0, {'Earth', 'World'}, 'USA')
local Idx2 = SA.StrIdxChkTabE (args, 'Idx2', false, 0, {'Earth', 'World'}, 'USA')
return Idx1..', '..Idx2
end
|
{{#invoke: SimpleArgs/Tests/SVals|RStrIdxChkTabE|Idx1=USA|Idx2=z}}
-> Error de Lua: Idx2 = "z" no s'ha trobat en "Earth/World, USA".
{{#invoke: SimpleArgs/Tests/SVals|RStrIdxChkTabE|Idx1=USA|Idx2=World}}
-> 2, 1
Taula des de paràmetre/s
[modifica]StrTab_1Par |
---|
function p.STab_1Par (frame)
local args = SA.GetArgs (frame)
local tab = SA.StrTab_1Par (args, 1, ':', 2)
return concat_tab(tab)
end
|
{{#invoke: SimpleArgs/Tests/SVals|STab_1Par|one:two:three}}
-> {one, two, three}
NumTab_1Par |
---|
function p.NumTab_1Par (frame)
local args = SA.GetArgs (frame)
local tab = SA.NumTab_1Par (args, 1, ':', 2)
return concat_tab(tab)
end
|
{{#invoke: SimpleArgs/Tests/SVals|NumTab_1Par|-1:zz:14}}
-> Error de Lua: #1 = "zz" no és un número.
{{#invoke: SimpleArgs/Tests/SVals|NumTab_1Par|-1.2:3.3:14}}
-> {-1.2, 3.3, 14}
ZeroOrPosNumTab_1Par |
---|
function p.ZeroOrPosNumTab_1Par (frame)
local args = SA.GetArgs (frame)
local tab = SA.ZeroOrPosNumTab_1Par (args, 1, ':', 2)
return concat_tab(tab)
end
|
{{#invoke: SimpleArgs/Tests/SVals|ZeroOrPosNumTab_1Par|-1:3.3:0}}
-> Error de Lua: #1 = -1 no és zero o un número positiu.
{{#invoke: SimpleArgs/Tests/SVals|ZeroOrPosNumTab_1Par|1:3.3:0}}
-> {1, 3.3, 0}
IntTab_1Par |
---|
function p.IntTab_1Par (frame)
local args = SA.GetArgs (frame)
local tab = SA.IntTab_1Par (args, 1, ':', 2)
return concat_tab(tab)
end
|
{{#invoke: SimpleArgs/Tests/SVals|IntTab_1Par|-1:3.3:14}}
-> Error de Lua: #1 = 3,3 no és un número enter.
{{#invoke: SimpleArgs/Tests/SVals|IntTab_1Par|-1:3:14}}
-> {-1, 3, 14}
ZeroOrPosIntTab_1Par |
---|
function p.ZeroOrPosIntTab_1Par (frame)
local args = SA.GetArgs (frame)
local tab = SA.ZeroOrPosIntTab_1Par (args, 1, ':', 2)
return concat_tab(tab)
end
|
{{#invoke: SimpleArgs/Tests/SVals|ZeroOrPosIntTab_1Par|-1:3:14}}
-> Error de Lua: #1 = -1 no és zero o un número positiu.
{{#invoke: SimpleArgs/Tests/SVals|ZeroOrPosIntTab_1Par|1:3:14}}
-> {1, 3, 14}
StrTab_NPar |
---|
function p.StrTab_NPos (frame)
local args, NArgs = SA.GetArgs (frame)
local tab = SA.StrTab_NPar (args, NArgs, 1)
return concat_tab(tab)
end
|
{{#invoke: SimpleArgs/Tests/SVals|StrTab_NPos|one|two|three}}
-> {one, two, three}
StrTab_NPar |
---|
function p.StrTab_N1Id (frame)
local args, NArgs = SA.GetArgs (frame)
local tab = SA.StrTab_NPar (args, NArgs, 'str%d')
return concat_tab(tab)
end
|
{{#invoke: SimpleArgs/Tests/SVals|StrTab_N1Id|str1=one|str3=three|str2=two|other=4}}
-> {one, two, three}
StrTab_NPar |
---|
function p.StrTab_N2Id (frame)
local args, NArgs = SA.GetArgs (frame)
local tab = SA.StrTab_NPar (args, NArgs, {'str%d','string%d'})
return concat_tab(tab)
end
|
{{#invoke: SimpleArgs/Tests/SVals|StrTab_N2Id|str1=one|string3=three|str2=two|other=4}}
-> {one, two, three}
Vegeu també
[modifica]local p = {}
local SA = require "Module:SimpleArgs"
function p.Char_Par (frame)
local args = SA.GetArgs (frame)
local Char = SA.Char_Par (args, 'Char', 'abc', 'a')
return Char
end
function p.RChar_Par (frame)
local args = SA.GetArgs (frame)
local Char = SA.RChar_Par (args, 'Char', 'abc')
return Char
end
function p.RChar_Par_ESS (frame)
local args = SA.GetArgs (frame)
local Char = SA.RChar_Par (args, 'Char', 'abc')
if SA.Error.yes then return SA.MsgError() end
return Char
end
function p.RPosInt_Par (frame)
local args = SA.GetArgs (frame)
local liminf = SA.PosInt_Par (args, 1)
local limsup = SA.PosInt_Par (args, 2)
local num = SA.RPosInt_Par (args, 3, liminf, limsup)
if SA.Error.yes then return SA.MsgError() end
return num
end
function p.RSize_Par (frame)
local args = SA.GetArgs (frame)
local size = SA.RSize_Par (args, 1, true, {perc={20,100}, em={12,119}, px={200,1900}})
if SA.Error.yes then return SA.MsgError() end
return size
end
function p.RHAlign_Par (frame)
local args = SA.GetArgs (frame)
local align = SA.RHAlign_Par (args, 1)
if SA.Error.yes then return SA.MsgError() end
return align
end
function p.RBool_Par (frame)
local args = SA.GetArgs (frame)
local Bool = SA.RBool_Par (args, 1)
if SA.Error.yes then return SA.MsgError() end
return Bool
end
function p.StrChkTab_Par (frame)
local args = SA.GetArgs (frame)
local Str = SA.StrChkTab_Par (args, 1, {'One','Two'})
if SA.Error.yes then return SA.MsgError() end
return Str
end
function p.StrIdxChkTab_Par (frame)
local args = SA.GetArgs (frame)
local Idx = SA.StrIdxChkTab_Par (args, 1, {'One','Two'})
if SA.Error.yes then return SA.MsgError() end
return Idx
end
function p.RStrIdxChkTab (frame)
local args = SA.GetArgs (frame)
local Idx1 = SA.StrIdxChkTab (args, 'Idx1', true, 0, {'Earth', 'World'}, 'USA')
local Idx2 = SA.StrIdxChkTab (args, 'Idx2', false, 0, {'Earth', 'World'}, 'USA')
return Idx1..', '..Idx2
end
function p.RStrIdxChkTabE (frame)
local args = SA.GetArgs (frame)
local Idx1 = SA.StrIdxChkTabE (args, 'Idx1', true, 0, {'Earth', 'World'}, 'USA')
local Idx2 = SA.StrIdxChkTabE (args, 'Idx2', false, 0, {'Earth', 'World'}, 'USA')
return Idx1..', '..Idx2
end
function concat_tab(tab)
return '{'..table.concat (tab, ', ')..'}'
end
function p.STab_1Par (frame)
local args = SA.GetArgs (frame)
local tab = SA.StrTab_1Par (args, 1, ':', 2)
return concat_tab(tab)
end
function p.NumTab_1Par (frame)
local args = SA.GetArgs (frame)
local tab = SA.NumTab_1Par (args, 1, ':', 2)
return concat_tab(tab)
end
function p.ZeroOrPosNumTab_1Par (frame)
local args = SA.GetArgs (frame)
local tab = SA.ZeroOrPosNumTab_1Par (args, 1, ':', 2)
return concat_tab(tab)
end
function p.IntTab_1Par (frame)
local args = SA.GetArgs (frame)
local tab = SA.IntTab_1Par (args, 1, ':', 2)
return concat_tab(tab)
end
function p.ZeroOrPosIntTab_1Par (frame)
local args = SA.GetArgs (frame)
local tab = SA.ZeroOrPosIntTab_1Par (args, 1, ':', 2)
return concat_tab(tab)
end
function p.StrTab_NPos (frame)
local args, NArgs = SA.GetArgs (frame)
local tab = SA.StrTab_NPar (args, NArgs, 1)
return concat_tab(tab)
end
function p.StrTab_N1Id (frame)
local args, NArgs = SA.GetArgs (frame)
local tab = SA.StrTab_NPar (args, NArgs, 'str%d')
return concat_tab(tab)
end
function p.StrTab_N2Id (frame)
local args, NArgs = SA.GetArgs (frame)
local tab = SA.StrTab_NPar (args, NArgs, {'str%d','string%d'})
return concat_tab(tab)
end
return p