switch(tabella, valore [, ...])
Lua non fornisce un'istruzione switch o case, pertanto nzLua fornisce un'alternativa utilizzando una funzione switch.
Il primo argomento di switch è una tabella di ricerca che contiene un insieme di funzioni. Il secondo argomento seleziona la funzione da chiamare. Tutti gli argomenti aggiuntivi saranno passati alla funzione che corrisponde al valore di ricerca.
Il primo argomento passato alle funzioni della tabella di ricerca sarà sempre il valore utilizzato per cercare la funzione. Gli altri argomenti saranno passati come sono stati forniti all'istruzione switch. Se il valore di ricerca non viene trovato nella tabella, la funzione switch richiama la funzione predefinita.
ops={}
ops['+'] = function(op,a,b) return a+b end
ops['-'] = function(op,a,b) return a-b end
ops['*'] = function(op,a,b) return a*b end
ops.default = function(op,a,b)
error( 'Invalid operation: ' || op, 0 )
end
result = switch(ops,'*',6,7)