Mercurial Hosting > luan
diff src/luan/modules/Package.luan @ 1578:c922446f53aa
immutable threading
author | Franklin Schmidt <fschmidt@gmail.com> |
---|---|
date | Mon, 08 Feb 2021 14:16:19 -0700 |
parents | 8d95711f6615 |
children |
line wrap: on
line diff
--- a/src/luan/modules/Package.luan Sun Jan 31 16:04:39 2021 -0700 +++ b/src/luan/modules/Package.luan Mon Feb 08 14:16:19 2021 -0700 @@ -1,9 +1,21 @@ require "java" local PackageLuan = require "java:luan.modules.PackageLuan" +local BasicLuan = require "java:luan.modules.BasicLuan" +local set_metatable = BasicLuan.set_metatable local Package = {} -Package.loaded = PackageLuan.loaded() Package.load = PackageLuan.load +local loaded = PackageLuan.loaded -- returns java map +local mt = {} +function mt.__index(_,key) + return loaded().get(key) +end +function mt.__new_index(_,key,value) + loaded().put(key,value) +end +Package.loaded = {} +set_metatable(Package.loaded,mt) + return Package