Module:ExempleParams/Documentation

ExempleParams est un court module qui montre comment récupérer les paramètres à l'intérieur du module au moyen de ipairs() et de pairs(). Il s'agit d'un modèle à visée pédagogique (voir Aide:Module).

Utilisation modifier

Fonctions exportables :

  • imprime_les_parametres(params) – cette fonction imprime les paramètres qu'on lui passe.

Modules externes et autres éléments dont ce module a besoin pour fonctionner :

  • mw.ipairs – générateur de paramètres non nommés (ou nommés explicitement avec un numéro entier) formant une séquence continue de 1 à N, sans aucun trou.
  • mw.pairs – générateur de paramètres nommés et non nommé. Remarque: il reprend en séquence d'abord les paramètres non nommés (ou nommés avec une clé entière) formant une séquence continue de 1 à N, sans aucun trou, avant de reprendre tous les autres paramètres (chaines, et nombres entiers ou pas) dans un ordre totalement arbitraire

Exemples modifier

{{#invoke:ExempleParams|imprime_les_parametres|paramètre non nommé 1| paramètre
 non nommé 2|troisième paramètre || cinquième |
nommé1 = couleur

| nommé2
=bleu|dernier
nommé=last }}

donne (notez quels blancs ou sauts de lignes sont éliminés ou pas des noms ou des valeurs des paramètres :

Paramètres séquentiels uniquement (entiers de 1 à N, sans aucun trou)
args[1] = "paramètre non nommé 1"
args[2] = "paramètre
non nommé 2"
args[3] = "troisième paramètre "
args[4] = ""
args[5] = " cinquième "
Tous les paramètres (dans un ordre arbitraire)
args[1] = "paramètre non nommé 1"
args[2] = "paramètre
non nommé 2"
args[3] = "troisième paramètre "
args[4] = ""
args[5] = " cinquième "
args["nommé1"] = "couleur"
args["dernier

nommé"] = "last"

args["nommé2"] = "bleu"
Tous les paramètres (dans l’ordre numérique sinon lexicographique ASCII des clefs)
args[1] = "paramètre non nommé 1"
args[2] = "paramètre
non nommé 2"
args[3] = "troisième paramètre "
args[4] = ""
args[5] = " cinquième "
args["dernier

nommé"] = "last"

args["nommé1"] = "couleur"
args["nommé2"] = "bleu"


{{#invoke:ExempleParams|imprime_les_parametres|écrivain|2=wallon|nom=[[Arthur Masson]]|mort à=[[Namur]]|mort en=1970|10=hors séquence|6=hors séquence aussi|1.5=belge| 3 = avec des blancs | 3.0 = avec des blancs aussi |4= |-1=entier négatif|+1=entier positif|0=entier nul|-0=entier négatif nul}}

donne :

Paramètres séquentiels uniquement (entiers de 1 à N, sans aucun trou)
args[1] = "écrivain"
args[2] = "wallon"
args[3] = "avec des blancs"
args[4] = ""
Tous les paramètres (dans un ordre arbitraire)
args[1] = "écrivain"
args[2] = "wallon"
args[3] = "avec des blancs"
args[4] = ""
args[6] = "hors séquence aussi"
args[0] = "entier nul"
args["+1"] = "entier positif"
args["nom"] = "Arthur Masson"
args["1.5"] = "belge"
args["mort en"] = "1970"
args[10] = "hors séquence"
args[-1] = "entier négatif"
args["mort à"] = "Namur"
args["-0"] = "entier négatif nul"
args["3.0"] = "avec des blancs aussi"
Tous les paramètres (dans l’ordre numérique sinon lexicographique ASCII des clefs)
args[-1] = "entier négatif"
args[0] = "entier nul"
args[1] = "écrivain"
args[2] = "wallon"
args[3] = "avec des blancs"
args[4] = ""
args[6] = "hors séquence aussi"
args[10] = "hors séquence"
args["+1"] = "entier positif"
args["-0"] = "entier négatif nul"
args["1.5"] = "belge"
args["3.0"] = "avec des blancs aussi"
args["mort en"] = "1970"
args["mort à"] = "Namur"
args["nom"] = "Arthur Masson"


Remarquer modifier

  • la table d'exportation de fonctions (ici « p ») contient déclaration et retour ; les fonctions exportées sont de la forme p.nomFonction() ;
  • le passage des paramètres aux fonctions exportées et leur récupération[1] (frame, pairs, ipairs) ;
  1. La récupération des paramètres s'effectue au moyen d'un mécanisme qui s'apparente à celui de getopt() (en)