Welcome to mirror list, hosted at ThFree Co, Russian Federation.

readonly.lua « test « lua-5.1-rc - github.com/torch/luajit-rocks.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
blob: 85c0b4e01324d0cf5f87495d44a6da26ad4cce96 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
-- make global variables readonly

local f=function (t,i) error("cannot redefine global variable `"..i.."'",2) end
local g={}
local G=getfenv()
setmetatable(g,{__index=G,__newindex=f})
setfenv(1,g)

-- an example
rawset(g,"x",3)
x=2
y=1	-- cannot redefine `y'