comparison src/luan/modules/Luan.luan @ 1434:56fb5cd8228d

cache compiled code in temp files
author Franklin Schmidt <fschmidt@gmail.com>
date Sun, 29 Dec 2019 15:25:07 -0700
parents 9ab267b9427c
children 851b9a48cc44
comparison
equal deleted inserted replaced
1433:5f038be65271 1434:56fb5cd8228d
7 local error = Boot.error 7 local error = Boot.error
8 Luan.error = error 8 Luan.error = error
9 Luan.get_metatable = BasicLuan.get_metatable 9 Luan.get_metatable = BasicLuan.get_metatable
10 Luan.hash_code = BasicLuan.hash_code 10 Luan.hash_code = BasicLuan.hash_code
11 Luan.ipairs = BasicLuan.ipairs 11 Luan.ipairs = BasicLuan.ipairs
12 Luan.load = BasicLuan.load 12 local java_load = BasicLuan.load
13 Luan.load_file = Boot.load_file 13 local load_file = Boot.load_file
14 Luan.load_file = load_file
14 Luan.new_error = BasicLuan.new_error 15 Luan.new_error = BasicLuan.new_error
15 Luan.pairs = BasicLuan.pairs 16 Luan.pairs = BasicLuan.pairs
16 Luan.pcall = BasicLuan.pcall 17 Luan.pcall = BasicLuan.pcall
17 Luan.range = BasicLuan.range 18 Luan.range = BasicLuan.range
18 Luan.raw_equal = BasicLuan.raw_equal 19 Luan.raw_equal = BasicLuan.raw_equal
24 Luan.to_string = BasicLuan.to_string 25 Luan.to_string = BasicLuan.to_string
25 Luan.try = BasicLuan.try_ 26 Luan.try = BasicLuan.try_
26 Luan.type = BasicLuan.type 27 Luan.type = BasicLuan.type
27 Luan.values = BasicLuan.values 28 Luan.values = BasicLuan.values
28 29
30 local function load(text,source_name,env,persist)
31 return java_load( text, source_name or "load", persist==true, env )
32 end
33 Luan.load = load
34
29 function Luan.do_file(uri) 35 function Luan.do_file(uri)
30 local fn = Luan.load_file(uri) or error("file '"..uri.."' not found") 36 local fn = load_file(uri) or error("file '"..uri.."' not found")
31 return fn() 37 return fn()
32 end 38 end
33 39
34 Luan.VERSION = Luan.do_file "classpath:luan/version.luan" 40 Luan.VERSION = Luan.do_file "classpath:luan/version.luan"
35 41
36 function Luan.eval(s,source_name,env) 42 function Luan.eval(s,source_name,env)
37 return Luan.load( "return "..s, source_name or "eval", env )() 43 return load( "return "..s, source_name or "eval", env )()
38 end 44 end
39 45
40 return Luan 46 return Luan