Module:Yesno/doc: Difference between revisions
Appearance
Content deleted Content added
Prepared the page for translation |
Marked this version for translation |
||
| Line 1: | Line 1: | ||
<languages/> |
<languages/> |
||
<translate> |
<translate> |
||
<!--T:35--> |
|||
<noinclude><!-- |
<noinclude><!-- |
||
-->{{#ifeq:{{SUBPAGENAME}}|doc||{{Documentation subpage}}}}<!-- |
-->{{#ifeq:{{SUBPAGENAME}}|doc||{{Documentation subpage}}}}<!-- |
||
| Line 14: | Line 15: | ||
{{Module rating|protected}} |
{{Module rating|protected}} |
||
<translate> |
<translate> |
||
<!--T:36--> |
|||
This module provides a consistent interface for processing boolean or boolean-style string input. |
This module provides a consistent interface for processing boolean or boolean-style string input. |
||
While Lua allows the <code>true</code> and <code>false</code> boolean values, wikicode templates can only express boolean values through strings such as "1", "0", "yes", "no", etc. |
While Lua allows the <code>true</code> and <code>false</code> boolean values, wikicode templates can only express boolean values through strings such as "1", "0", "yes", "no", etc. |
||
| Line 21: | Line 23: | ||
If it is passed input that it does not recognise as boolean or <code>nil</code>, it is possible to specify a default value to return. |
If it is passed input that it does not recognise as boolean or <code>nil</code>, it is possible to specify a default value to return. |
||
== Module Quality == |
== Module Quality == <!--T:37--> |
||
</translate> |
</translate> |
||
| Line 27: | Line 29: | ||
<translate> |
<translate> |
||
== Syntax == |
== Syntax == <!--T:38--> |
||
<!--T:39--> |
|||
<syntaxhighlight lang="lua"> |
<syntaxhighlight lang="lua"> |
||
yesno(value, default) |
yesno(value, default) |
||
</syntaxhighlight> |
</syntaxhighlight> |
||
<!--T:40--> |
|||
<code>value</code> is the value to be tested. |
<code>value</code> is the value to be tested. |
||
Boolean input or boolean-style input (see below) always evaluates to either <code>true</code> or <code>false</code>, and <code>nil</code> always evaluates to <code>nil</code>. |
Boolean input or boolean-style input (see below) always evaluates to either <code>true</code> or <code>false</code>, and <code>nil</code> always evaluates to <code>nil</code>. |
||
Other values evaluate to <code>default</code>. |
Other values evaluate to <code>default</code>. |
||
== Usage == |
== Usage == <!--T:41--> |
||
<!--T:42--> |
|||
First, load the module. Note that it can only be loaded from other Lua modules, not from normal wiki pages. |
First, load the module. Note that it can only be loaded from other Lua modules, not from normal wiki pages. |
||
For normal wiki pages you can use {{tlx|yesno}} instead. |
For normal wiki pages you can use {{tlx|yesno}} instead. |
||
<!--T:43--> |
|||
<syntaxhighlight lang="lua"> |
<syntaxhighlight lang="lua"> |
||
local yesno = require('Module:Yesno') |
local yesno = require('Module:Yesno') |
||
</syntaxhighlight> |
</syntaxhighlight> |
||
<!--T:44--> |
|||
Some input values always return <code>true</code>, and some always return <code>false</code>. |
Some input values always return <code>true</code>, and some always return <code>false</code>. |
||
<code>nil</code> values always return <code>nil</code>. |
<code>nil</code> values always return <code>nil</code>. |
||
<!--T:45--> |
|||
<syntaxhighlight lang="lua"> |
<syntaxhighlight lang="lua"> |
||
-- These always return true: |
-- These always return true: |
||
| Line 59: | Line 67: | ||
yesno(true) |
yesno(true) |
||
<!--T:46--> |
|||
-- These always return false: |
-- These always return false: |
||
yesno('no') |
yesno('no') |
||
| Line 68: | Line 77: | ||
yesno(false) |
yesno(false) |
||
<!--T:47--> |
|||
-- A nil value always returns nil: |
-- A nil value always returns nil: |
||
yesno(nil) |
yesno(nil) |
||
| Line 80: | Line 90: | ||
yesno('tRuE') |
yesno('tRuE') |
||
<!--T:48--> |
|||
-- These always return false: |
-- These always return false: |
||
yesno('No') |
yesno('No') |
||
| Line 88: | Line 99: | ||
</syntaxhighlight> |
</syntaxhighlight> |
||
<!--T:49--> |
|||
You can specify a default value if <code>yesno</code> receives input other than that listed above. |
You can specify a default value if <code>yesno</code> receives input other than that listed above. |
||
If you don't supply a default, the module will return <code>nil</code> for these inputs. |
If you don't supply a default, the module will return <code>nil</code> for these inputs. |
||
<!--T:50--> |
|||
<syntaxhighlight lang="lua"> |
<syntaxhighlight lang="lua"> |
||
-- These return nil: |
-- These return nil: |
||
| Line 98: | Line 111: | ||
yesno(function() return 'This is a function.' end) |
yesno(function() return 'This is a function.' end) |
||
<!--T:51--> |
|||
-- These return true: |
-- These return true: |
||
yesno('foo', true) |
yesno('foo', true) |
||
| Line 104: | Line 118: | ||
yesno(function() return 'This is a function.' end, true) |
yesno(function() return 'This is a function.' end, true) |
||
<!--T:52--> |
|||
-- These return "bar": |
-- These return "bar": |
||
yesno('foo', 'bar') |
yesno('foo', 'bar') |
||
| Line 117: | Line 132: | ||
</syntaxhighlight> |
</syntaxhighlight> |
||
<!--T:53--> |
|||
Although the blank string usually evaluates to <code>false</code> in wikitext, it evaluates to <code>true</code> in Lua. |
Although the blank string usually evaluates to <code>false</code> in wikitext, it evaluates to <code>true</code> in Lua. |
||
This module prefers the Lua behaviour over the wikitext behaviour. |
This module prefers the Lua behaviour over the wikitext behaviour. |
||
| Line 129: | Line 145: | ||
<translate> |
<translate> |
||
<!--T:54--> |
|||
</noinclude> |
</noinclude> |
||
| #default= |
| #default= |
||