Introduction au Lua/Modules
Les modules Lua basés sur l'extension Scribunto sont de simples pages regroupées dans un espace de nom particulier que l'on nomme Module: auxquels Mediawiki associe un numéro d'identifiant. Les pages des modules seront donc accessible via leur titre Module:Nom_du_module. Les modules utilisent une table pour stocker les fonctions et variables, cette table est retournée à la fin du code du module[1]. Nous verrons dans cette leçon comment ajouter plusieurs fonctions dans un même module.
Prérequis
[modifier | modifier le wikicode]Cette leçon suppose que vous ayez assimilé la leçon Scribunto.
Créer un script Lua avec plusieurs fonctions
[modifier | modifier le wikicode]- Éditer Module:Sandbox.
- Supprimer le code existant.
- Ajouter le code suivant puis enregistrer la page :
local p = {} function p.hello() return 'Hello !' end function p.meet() return 'Ravi de vous rencontrer !' end return p
Tester votre script
[modifier | modifier le wikicode]- Accéder à votre page de test que nous appellerons: "votre page de test".
- Ajouter le code suivant puis enregistrer la page:
* {{#invoke:Sandbox|hello}} * {{#invoke:Sandbox|meet}}
Le résultat devrait être:
- Bonjour !
- Ravi de vous rencontrer !
Comprendre votre script
[modifier | modifier le wikicode]function p.hello()
Définit une fonction nomméehello
.function p.meet()
Définit une fonction nomméemeet
.{{#invoke:Sandbox|hello}}
Appelle la fonctionhello
du module Sandbox.{{#invoke:Sandbox|meet}}
Appelle la fonctionmeet
du module Sandbox.
Chaque module contient une ou plusieurs fonctions qui peuvent être appelées individuellement.
Conclusion
[modifier | modifier le wikicode]Félicitations ! Vous avez créé, testé et compris comment fonctionne un module Lua avec plusieurs fonctions. Continuez avec la leçon sur les Variables.
Références
[modifier | modifier le wikicode]