toloframework
Version:
Javascript/HTML/CSS compiler for Firefox OS or nodewebkit apps using modules in the nodejs style.
30 lines (28 loc) • 809 B
JavaScript
var require = function() {
var modules = {};
var definitions = {};
var f = function(id, body) {
if( typeof body === 'function' ) {
definitions[id] = body;
return;
}
var mod;
body = definitions[id];
if (typeof body === 'undefined') {
var err = new Error("Required module is missing: " + id);
console.error(err.stack);
throw err;
}
mod = modules[id];
if (typeof mod === 'undefined') {
mod = {exports: {}};
var exports = mod.exports;
body(exports, mod);
modules[id] = mod.exports;
mod = mod.exports;
//console.log("Module initialized: " + id);
}
return mod;
};
return f;
}();