Menu
Coddy logo textTech

Recapitulação - Tabela Somente Leitura

Parte da seção Logic & Flow do Journey de Lua da Coddy — lição 23 de 54.

challenge icon

Desafio

Fácil

Escreva uma função makeReadOnly que receba original e retorne uma versão somente leitura da tabela.

Crie uma tabela proxy com uma metatabela que permita a leitura da tabela original, mas impeça quaisquer modificações.

Lógica:

  • Crie uma tabela proxy vazia
  • Crie uma metatabela com __index definido para a tabela original (para permitir a leitura)
  • Adicione __newindex à metatabela que não faz nada (para bloquear modificações)
  • Anexe a metatabela ao proxy usando setmetatable()
  • Retorne a tabela proxy

Parâmetros:

  • original (table): A tabela a ser protegida contra modificações

Retorna: Uma tabela proxy que fornece acesso somente leitura à tabela original (table)

Experimente você mesmo

function makeReadOnly(original)
    -- Escreva o código aqui
end

Todas as lições de Logic & Flow