1- Une métatable est une simple table qui va mettre en place des fonctionnalités spéciales appelées métaméthodes..
2- Pour mettre en place une métatables:1 - Construire la métatable | mt = {} |
2 - Définir son action | mt.__xyz = function() . . . return . . . end |
3 - L'associer à une table | setmetatable(table, mt) |
3- Il existe 18 clés ( ou événements ) déjà définies dans le noyau de Lua.
4- Il existe des métaméthodes arithmétiques, des métaméthodes relationnelles et autres métaméthodes.
6- Tous ces types, les tables, les chaines et les userdata sont pilotés par des métatables.
7- Les métatables ne sont pas obligatoires pour développer des applications en Lua, mais n'oubliez pas qu'elles offrent une incommensurable richesse à la syntaxe de la langue et que par conséquent il serait dommage de ne pas les utiliser.