Vikipedio:Lua/Moduloj/TableBuilder/eo
Ŝablona programado | Diskutoj | Lua | Testoj | Subpaĝoj | ||||
---|---|---|---|---|---|---|---|---|
Modulo | Esperanto | English
|
Français
|
Modulo: | Dokumentado |
TableBuilder estas modulo, kiu aplikas al funkcioj de la librairie Table interface fluide. La kodo estas tiel samtempe pli konciza kaj pli klara.
Por ŝablonoj redakti
Ne estas funkcioj rekte uzeblaj en ŝablonoj.
Por moduloj redakti
Atento : ĉi tiu modulo nur estas uzata por tabeloj séquences, ou au pire des tables dont les éléments sont connus et limités. En effet, ajouter à la table un élément ayant pour index le nom d'une de ces fonctions remplace la fonction par cet élément.
Uzado redakti
Vi devas unue ŝarĝi la modulon:
local TableBuilder = require('Modulo:TableBuilder')
Due, vi devas instanci la tabelon, per new
por nova tabelo, per set
por ekzistanta tabelo, aŭ klonante ekzistantan tabelon.
local tab1 = TableBuilder.new()
TableBuilder.set(tab2)
local tab1 = TableBuilder.clone(tab3)
Poste vi povas uzi la nomitajn metodojn sur la librairie Table (insert
, remove
, sort
, maxn
) aŭ une des fonctions spécifiques décrites ci-dessous.
Finfine vi devas kunĉenigi la tabelon uzante la metodon concat()
:
tab.concat()
Specifa funkcio redakti
minsert( ... )
— ebligas multfojan enigon, pour ajouter en une opération plusieurs éléments à la fin de la table. Les paramètres nil passés à la fonction sont ignorés.
tinsert( table2, i, j )
— ajoute à la fin de la table les élémentstable2[i]
àtable2[j]
. La valeur par défaut dei
est 1, et la valeur par défaut dej
est la longueur de la table. Sii
est plus grand quej
aucun élément n'est ajouté.
clone redakti
TableBuilder.clone
duobligas ekzistantan tabelon, de façon récursive.
Contrairement à mw.clone, cette fonction ne clone pas la meta-table, mais utilise la meta-table de TableBuilder. Ceci permet notamment de modifier une table chargée par mw.loadData
.
Ĉi tiu funkcio ne devas esti uzata sur la totalité de la tabelo ŝarĝata per loadData (uzi require
sera pli ekonomie en mémoire) mais sur une petite sous-table.
Ekzemploj redakti
local TableBuilder = require( 'Modulo:TableBuilder' )
local date = { 'Ĉi tiu ekzemplo a été modifié le' }
TableBuilder.set( date )
date.insert( "4" )
.insert( "2013" )
.insert( 3, "septembre" )
local time = TableBuilder.new()
local heure, minute = "12", "8"
local seconde
time.minsert( "à", heure, "heures et", minute, "minutes", seconde, seconde and "secondes" )
date.tinsert( time )
local s = date.concat( ' ' ) .. "."
--s = 'Cet exemple a été modifié le 4 septembre 2013 à 12 h et 8 minutes.'
Dependeco redakti
- Neniu
Deveno redakti
- Franca vikipedio: fr:Module:TableBuilder