Module:Yesno/doc/cs
Toto je dokumentace podstránky Module:Yesno/doc. Obsahuje informace o použití, kategorie a další obsah, který není součástí původní stránky Module. |
Varování: | Tato stránka je sdílena mezi několika wiki. Všechny změny této stránky budou automaticky zkopírované na všechny wiki, které se nachází v levém postranním panelu. |
Tento modul Lua se používá na mnoha stránkách. Aby nedošlo k rozsáhlému narušení a zbytečnému zatížení serveru, měly by být všechny změny tohoto modulu nejprve otestovány na jeho podstránkách /sandbox nebo /testcases. Testované změny pak mohou být přidány na tuto stránku v jediné úpravě. Před implementací jakýchkoli změn zvažte prosím diskusi na diskusní stránce. |
Tento modul se používá v systémových zprávách. Jeho změny mohou způsobit okamžité změny uživatelského rozhraní MediaWiki. Chcete-li se vyhnout rozsáhlému narušení, měly by být všechny změny nejprve otestovány na podstránce /sandbox nebo /testcases tohoto module nebo ve vašem vlastním uživatelském prostoru.Testované změny pak mohou být přidány v jedné jediné úpravě do tohoto modulu. Před implementací prodiskutujte jakékoli změny na diskusní stránce. |
Tento modul je hodnocen jako připraven pro všeobecné použití. Dosáhl zralé formy a předpokládá se, že je bez chyb a je připraven k použití, kdekoli je to vhodné. Je připraven zmínit se na stránkách nápovědy a dalších zdrojích jako možnost, kterou se mohou naučit noví uživatelé. Aby se snížilo zatížení serveru a špatný výstup, měl by být vylepšen pomocí testování v izolovaném prostoru spíše než opakovanými úpravami metodou pokus-omyl. |
Tento modul podléhá stránkové ochraně. Je to vysoce viditelný modul, který používá velmi velký počet stránek. Protože vandalismus nebo chyby by ovlivnily mnoho stránek a dokonce i triviální úpravy by mohly způsobit značné zatížení serverů, je chráněn před úpravami. |
Tento modul poskytuje logické rozhraní pro zpracování booleovských hodnot nebo zadávání řetězce v booleovském stylu.
Zatímco Lua povoluje logické hodnoty true
a false
, šablony wikikódu mohou vyjadřovat booleovské hodnoty pouze prostřednictvím řetězců, jako jsou "1", "0", "yes", "no" atd.
Tento modul zpracovává tyto druhy řetězců a převádí je na booleovský vstup, který Lua zpracuje.
Vrátí také hodnoty nil
jako nil
, aby bylo možné rozlišovat mezi nil
a false
.
Modul také přijímá další struktury Lua jako vstup, tj. booleovské hodnoty, čísla, tabulky a funkce.
Pokud je předán vstup, který není rozpoznán jako booleovský nebo nil
, je možné zadat výchozí hodnotu, která se má vrátit.
Kvalita modulu
- Diff sandbox code
Syntaxe
yesno(value, default)
value
je hodnota, která má být testována.
Booleovský vstup nebo vstup v booleovském stylu (viz níže) se vždy vyhodnotí jako true
nebo false
a nil
se vždy vyhodnotí jako nil
.
Ostatní hodnoty jsou vyhodnoceny jako default
.
Použití
Nejprve načtěte modul. Všimněte si, že jej lze načíst pouze z jiných modulů Lua, nikoli z normálních wiki stránek. Pro normální wiki stránky můžete místo toho použít {{yesno}}.
local yesno = require('Module:Yesno')
Některé vstupní hodnoty vždy vrátí true
a některé vždy vrátí false
.
Hodnoty nil
vždy vrátí nil
.
-- Tyto vždy vrátí true:
yesno('yes')
yesno('y')
yesno('true')
yesno('t')
yesno('1')
yesno(1)
yesno(true)
-- Tyto vždy vrátí false:
yesno('no')
yesno('n')
yesno('false')
yesno('f')
yesno('0')
yesno(0)
yesno(false)
-- Hodnoty nil vždy vrátí nil.
yesno(nil)
Hodnoty řetězce jsou před přiřazením převedeny na malá písmena:
-- Tyto vždy vrátí true:
yesno('Yes')
yesno('YES')
yesno('yEs')
yesno('Y')
yesno('tRuE')
-- Tyto vždy vrátí false:
yesno('No')
yesno('NO')
yesno('nO')
yesno('N')
yesno('fALsE')
Můžete zadat výchozí hodnotu, pokud yesno
obdrží jiný vstup, než je uvedeno výše.
Pokud nezadáte výchozí hodnotu, modul za tyto vstupy vrátí nil
.
-- Tyto vrátí nil:
yesno('foo')
yesno({})
yesno(5)
yesno(function() return 'This is a function.' end)
-- Tyto vrátí true:
yesno('foo', true)
yesno({}, true)
yesno(5, true)
yesno(function() return 'This is a function.' end, true)
-- Tyto vrátí "bar":
yesno('foo', 'bar')
yesno({}, 'bar')
yesno(5, 'bar')
yesno(function() return 'This is a function.' end, 'bar')
Všimněte si, že prázdný řetězec také funguje tímto způsobem:
yesno('') -- Vrací nil.
yesno('', true) -- Vrací true.
yesno('', 'bar') -- Vrací "bar".
I když je prázdný řetězec ve wikitextu obvykle vyhodnocen jako false
, má v Lua hodnotu true
.
Tento modul preferuje chování Lua před chováním wikitextu.
Pokud je pro váš modul důležité zacházet s prázdným řetězcem jako false
, budete muset odstranit prázdné argumenty v dřívější fázi zpracování.