dotcall
Version:
callback hell remedy, syntax sugar
33 lines (31 loc) • 916 B
JavaScript
console.log('>>dotcall.js')
var fs = require('fs')
var dcconvert = require('./convert')
loadFile = function(module, filename) {
var raw, s
raw = fs.readFileSync(filename, 'utf8')
s = raw.charCodeAt(0) === 0xFEFF ? raw.substring(1) : raw
if (s[0] == '#' && s[1] == '!') {
var i = s.indexOf('\n')
s = s.substr(i)
}
console.log('FILENAME:', filename)
return module._compile(dcconvert.dotcallConvert(s, filename), filename)
}
if (require.extensions) {
require.extensions['.yy'] = loadFile
require.extensions['.dc'] = loadFile
}
module.exports.require = function(f) {
var raw, b;
raw = fs.readFileSync(f, 'utf8');
b = raw.charCodeAt(0) === 0xFEFF ? raw.substring(1) : raw;
eval(compile(b))
}
module.exports.convert = dcconvert.dotcallConvert
module.exports.userSym = dcconvert.userSym
module.exports.handleExt = function(ext) {
if (require.extensions) {
require.extensions[ext] = loadFile
}
}