Aller au contenu

Module:Yesno/Documentation

Une page de Wikipédia, l'encyclopédie libre.
Ceci est une version archivée de cette page, en date du 28 avril 2014 à 05:43 et modifiée en dernier par Zebulon84 (discuter | contributions) (Exemples). Elle peut contenir des erreurs, des inexactitudes ou des contenus vandalisés non présents dans la version actuelle.

Utilisation

Ce module propose une fonction cohérante pour transformer des valeur ou chaine en booléen.

Le wikicode ne permet pas de saisir directement des valeur booléenne, seulement des chaine type « oui » ou « non ». Ce module les évalue et détermine une valeur booléenne true ou false que lua pourra utiliser. Il retourne nil en l'abscence de paramètre, pour permettre la distiction entre nil et false. Lorsque ce paramètre a une valeur imprévue, le module retourne la valeur par défaut ou nil.

Syntax

yesno(valeur, défaut)
  • valeur – est la valeur à tester.
  • défaut – valeur par défault pour les valeurs qui ne sont ni assimilé à des booléens ni nil.

Exemples

Il faut commencer par charger le module. Il ne peut être appelé que depuis un autre module Lua, il ne peut pas être appelé directement par un modèle.

local yesno = require('Module:Yesno')

Certaines valeurs retournent toujours true, d'autres valeurs retournent toujours false. La valeur nil retourne toujours nil.

-- These always return true:
yesno('oui')
yesno('yes')
yesno('y')
yesno('true')
yesno('1')
yesno(1)
yesno(true)

-- These always return false:
yesno('non')
yesno('no')
yesno('n')
yesno('false')
yesno('0')
yesno(0)
yesno(false)

-- A nil value always returns nil:
yesno(nil)

Les chaines sont converties en minuscules avant d'être évaluées :

-- These always return true:
yesno('Oui')
yesno('OUI')
yesno('oUi')
yesno('tRuE')

-- These always return false:
yesno('Non')
yesno('NON')
yesno('nOn')
yesno('fALsE')

Une valeur par défaut peut être spécifiée pour les valeurs autres que celle listée ci-dessus. Si aucune valeur par défaut n'est fournie le module retourne nil pour ces valeurs.

-- These return nil:
yesno('foo')
yesno({})
yesno(5)
yesno(function() return 'This is a function.' end)

-- These return true:
yesno('foo', true)
yesno({}, true)
yesno(5, true)
yesno(function() return 'This is a function.' end, true)

-- These return "bar":
yesno('foo', 'bar')
yesno({}, 'bar')
yesno(5, 'bar')
yesno(function() return 'This is a function.' end, 'bar')

Une chaine vide est aussi évalué à la valeur par défaut.

yesno('')        -- Returns nil.
yesno('', true)  -- Returns true.
yesno('', 'bar') -- Returns "bar".

Une chaine vide est évaluée comme « false» en wikitexte, mais comme « true » en Lua. Ce module suis le comportement de Lua. S'il est important que les chaine vide soit considérée comme « false » pour vvotre module, vous devez supprimer les paramètres vides avant d'appeler ce module.