wisp
Version:
Homoiconic JS with clojure syntax, s-expressions & macros
25 lines (24 loc) • 3 kB
JavaScript
{
var _ns_ = {
id: 'wisp.engine.node',
doc: void 0
};
var fs = require('fs');
var readFileSync = fs.readFileSync;
var wisp_compiler = require('./../compiler');
var compile = wisp_compiler.compile;
}
global.__verbose__ = 0 <= process.argv.indexOf('--verbose');
var compilePath = exports.compilePath = function compilePath(path) {
return function () {
var sourceø1 = readFileSync(path, 'utf8');
var outputø1 = compile(sourceø1, { 'source-uri': path });
return (outputø1 || 0)['error'] ? (function () {
throw (outputø1 || 0)['error'];
})() : (outputø1 || 0)['code'];
}.call(this);
};
(require.extensions || 0)['.wisp'] = function (src, path) {
return src._compile(compilePath(path), path);
};
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImFub255bW91cy53aXNwIl0sIm5hbWVzIjpbIl9uc18iLCJpZCIsImRvYyIsInJlYWRGaWxlU3luYyIsImNvbXBpbGUiLCJnbG9iYWwiLCJfX3ZlcmJvc2VfXyIsInByb2Nlc3MiLCJhcmd2IiwiaW5kZXhPZiIsImNvbXBpbGVQYXRoIiwiZXhwb3J0cyIsInBhdGgiLCJzb3VyY2XDuDEiLCJvdXRwdXTDuDEiLCJyZXF1aXJlIiwiZXh0ZW5zaW9ucyIsInNyYyIsIl9jb21waWxlIl0sIm1hcHBpbmdzIjoiO0lBQUEsSUFBQ0EsSSxHQUFEO0FBQUEsWUFBQUMsRSxFQUFJLGtCQUFKO0FBQUEsWUFBQUMsRyxFQUFBLEssQ0FBQTtBQUFBLFU7O1FBQ3dCQyxZQUFBLEcsR0FBQUEsWTs7UUFDV0MsT0FBQSxHLGNBQUFBLE87O0FBRTdCQyxNQUFBLENBQU9DLFdBQWIsR0FBNkIsQ0FBSixJQUFnQkMsT0FBQSxDQUFRQyxJQUFqQixDQUFDQyxPQUFGLEMsV0FBQSxDQUEvQixDO0FBRUEsSUFBTUMsV0FBQSxHQUFBQyxPQUFBLENBQUFELFdBQUEsR0FBTixTQUFNQSxXQUFOLENBQ0dFLElBREgsRUFFRTtBQUFBLGUsWUFBTTtBQUFBLGdCQUFBQyxRLEdBQVFWLFlBQUQsQ0FBZ0JTLElBQWhCLEUsTUFBQSxDQUFQO0FBQUEsWUFDQSxJQUFBRSxRLEdBQVFWLE9BQUQsQ0FBU1MsUUFBVCxFQUFnQixFLGNBQWFELElBQWIsRUFBaEIsQ0FBUCxDQURBO0FBQUEsWUFFSixPLENBQVlFLFEsTUFBUixDLE9BQUEsQ0FBSixHLGFBQ0U7QUFBQSxzQixDQUFlQSxRLE1BQVIsQyxPQUFBLENBQVA7QUFBQSxhLENBQUEsRUFERixHLENBRVNBLFEsTUFBUCxDLE1BQUEsQ0FGRixDQUZJO0FBQUEsUyxLQUFOLEMsSUFBQTtBQUFBLEtBRkYsQztDQVVXQyxPQUFBLENBQVFDLFUsTUFBYixDQUF3QixPQUF4QixDQUFOLEdBQ00sVUFBS0MsR0FBTCxFQUFTTCxJQUFULEVBQ0U7QUFBQSxXQUFXSyxHQUFWLENBQUNDLFFBQUYsQ0FBZ0JSLFdBQUQsQ0FBY0UsSUFBZCxDQUFmLEVBQW1DQSxJQUFuQztBQUFBLENBRlIiLCJzb3VyY2VzQ29udGVudCI6WyIobnMgd2lzcC5lbmdpbmUubm9kZVxuICAoOnJlcXVpcmUgW2ZzIDpyZWZlciBbcmVhZC1maWxlLXN5bmNdXVxuICAgICAgICAgICAgW3dpc3AuY29tcGlsZXIgOnJlZmVyIFtjb21waWxlXV0pKVxuXG4oc2V0ISBnbG9iYWwuKip2ZXJib3NlKiogKDw9IDAgKC5pbmRleE9mIHByb2Nlc3MuYXJndiA6LS12ZXJib3NlKSkpXG5cbihkZWZuIGNvbXBpbGUtcGF0aFxuICBbcGF0aF1cbiAgKGxldCBbc291cmNlIChyZWFkLWZpbGUtc3luYyBwYXRoIDp1dGY4KVxuICAgICAgICBvdXRwdXQgKGNvbXBpbGUgc291cmNlIHs6c291cmNlLXVyaSBwYXRofSldXG4gICAgKGlmICg6ZXJyb3Igb3V0cHV0KVxuICAgICAgKHRocm93ICg6ZXJyb3Igb3V0cHV0KSlcbiAgICAgICg6Y29kZSBvdXRwdXQpKSkpXG5cbjs7IFJlZ2lzdGVyIGAud2lzcGAgZmlsZSBleHRlbnNpb24gc28gdGhhdFxuOzsgbW9kdWxlcyBjYW4gYmUgc2ltcGx5IHJlcXVpcmVkLlxuKHNldCEgKGdldCByZXF1aXJlLmV4dGVuc2lvbnMgXCIud2lzcFwiKVxuICAgICAgKGZuIFtzcmMgcGF0aF1cbiAgICAgICAgKC5fY29tcGlsZSBzcmMgKGNvbXBpbGUtcGF0aCBwYXRoKSBwYXRoKSkpXG4iXX0=