Sat, 20 Nov 2010 12:11:34 +0000
Add LVM().registerLib(env, name, lib) to register a table of native functions to an environment.
lvm.js | file | annotate | diff | comparison | revisions |
--- a/lvm.js Sat Nov 20 12:10:53 2010 +0000 +++ b/lvm.js Sat Nov 20 12:11:34 2010 +0000 @@ -605,6 +605,20 @@ throw "Unhandled opcode: "+INS_OPCODE(instruction); } } + }, + registerLib: function (env, name, lib) + { + var t; + if(name) + { + t = this.LValue({}); // Create env[name] and put fns in there + env.setIndex(this.LValue(name), t); + } + else + t = env; // Import directly into env + + for(var k in lib) + t.setIndex(this.LValue(k), this.LValue(lib[k])); } };