(Translated by https://www.hiragana.jp/)
モジュール:Yesno/doc - Wikipedia コンテンツにスキップ

モジュール:Yesno/doc

このモジュールはブール、またはブールふう文字もじれつ入力にゅうりょく処理しょりするための統一とういつしたインターフェースを提供ていきょうします。Luaではtruefalseといったブールがありますが、ウィキテキストにおけるテンプレートでは"yes"、"no"など文字もじれつでしか処理しょりできません。このモジュールはこれらの文字もじれつ処理しょりして、Luaで使用しようするためのブール変換へんかんします。また、nilfalse区別くべつできるよう、nil入力にゅうりょくnilとしてかえします。このモジュールはブール数字すうじ、テーブル、関数かんすう入力にゅうりょくけており、ブールnilとして認識にんしきできなかった場合ばあいがえ指定していすることもできます。

書式しょしき[編集へんしゅう]

yesno(value, default)

value処理しょりされる入力にゅうりょくです。ブールまたはブールふう文字もじれつ入力にゅうりょくされた場合ばあいtrueまたはfalseかえし、nil入力にゅうりょくされた場合ばあいnilかえし、それ以外いがい場合ばあいdefaultかえします。

使用しようほう[編集へんしゅう]

まず、モジュールをロードします。なお、このモジュールはほかのLuaモジュールでしか使用しようできません。テンプレートから使つか場合ばあいわりに{{yesno}}を使用しようしてください。

local yesno = require('Module:Yesno')

一部いちぶ入力にゅうりょくかならtrueかえし、一部いちぶかならfalseかえします。nilかならnilかえします。

-- かならずtrueをかえ
yesno('yes')
yesno('y')
yesno('true')
yesno('t')
yesno('1')
yesno(1)
yesno(true)

-- かならずfalseをかえ
yesno('no')
yesno('n')
yesno('false')
yesno('f')
yesno('0')
yesno(0)
yesno(false)

-- nilかならずnilかえ
yesno(nil)

文字もじれつはまず小文字こもじ変換へんかんしてから判別はんべつしています。

-- かならずtrueをかえ
yesno('Yes')
yesno('YES')
yesno('yEs')
yesno('Y')
yesno('tRuE')

-- かならずfalseをかえ
yesno('No')
yesno('NO')
yesno('nO')
yesno('N')
yesno('fALsE')

上記じょうき以外いがい入力にゅうりょく場合ばあいかえすdefault指定していできます。指定していしなかった場合ばあいnilかえします。

-- nilをかえ
yesno('foo')
yesno({})
yesno(5)
yesno(function() return 'This is a function.' end)

-- trueをかえ
yesno('foo', true)
yesno({}, true)
yesno(5, true)
yesno(function() return 'This is a function.' end, true)

-- "bar"をかえ
yesno('foo', 'bar')
yesno({}, 'bar')
yesno(5, 'bar')
yesno(function() return 'This is a function.' end, 'bar')

空文字くうもじれつでもおなあつかいです。

yesno('')        -- nilをかえ
yesno('', true)  -- trueをかえ
yesno('', 'bar') -- "bar"をかえ

ウィキテキストでは一般いっぱんてきには空文字くうもじれつをfalseとしてあつかうが、Luaではtrueとしてあつかわれます。ほんモジュールではLuaでの挙動きょどう採用さいようしているため、空文字くうもじれつをfalseとしてあつか必要ひつようがある場合ばあいべつ処理しょりしてください。