comparison 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
comparison
equal deleted inserted replaced
1577:60e5c324adf9 1578:c922446f53aa
1 require "java" 1 require "java"
2 local PackageLuan = require "java:luan.modules.PackageLuan" 2 local PackageLuan = require "java:luan.modules.PackageLuan"
3 local BasicLuan = require "java:luan.modules.BasicLuan"
4 local set_metatable = BasicLuan.set_metatable
3 5
4 local Package = {} 6 local Package = {}
5 7
6 Package.loaded = PackageLuan.loaded()
7 Package.load = PackageLuan.load 8 Package.load = PackageLuan.load
8 9
10 local loaded = PackageLuan.loaded -- returns java map
11 local mt = {}
12 function mt.__index(_,key)
13 return loaded().get(key)
14 end
15 function mt.__new_index(_,key,value)
16 loaded().put(key,value)
17 end
18 Package.loaded = {}
19 set_metatable(Package.loaded,mt)
20
9 return Package 21 return Package