| // Generated by CoffeeScript 1.10.0 |
| (function() { |
| var CoffeeScript, Module, binary, child_process, ext, findExtension, fork, helpers, i, len, loadFile, path, ref; |
| |
| CoffeeScript = require('./coffee-script'); |
| |
| child_process = require('child_process'); |
| |
| helpers = require('./helpers'); |
| |
| path = require('path'); |
| |
| loadFile = function(module, filename) { |
| var answer; |
| answer = CoffeeScript._compileFile(filename, false); |
| return module._compile(answer, filename); |
| }; |
| |
| if (require.extensions) { |
| ref = CoffeeScript.FILE_EXTENSIONS; |
| for (i = 0, len = ref.length; i < len; i++) { |
| ext = ref[i]; |
| require.extensions[ext] = loadFile; |
| } |
| Module = require('module'); |
| findExtension = function(filename) { |
| var curExtension, extensions; |
| extensions = path.basename(filename).split('.'); |
| if (extensions[0] === '') { |
| extensions.shift(); |
| } |
| while (extensions.shift()) { |
| curExtension = '.' + extensions.join('.'); |
| if (Module._extensions[curExtension]) { |
| return curExtension; |
| } |
| } |
| return '.js'; |
| }; |
| Module.prototype.load = function(filename) { |
| var extension; |
| this.filename = filename; |
| this.paths = Module._nodeModulePaths(path.dirname(filename)); |
| extension = findExtension(filename); |
| Module._extensions[extension](this, filename); |
| return this.loaded = true; |
| }; |
| } |
| |
| if (child_process) { |
| fork = child_process.fork; |
| binary = require.resolve('../../bin/coffee'); |
| child_process.fork = function(path, args, options) { |
| if (helpers.isCoffee(path)) { |
| if (!Array.isArray(args)) { |
| options = args || {}; |
| args = []; |
| } |
| args = [path].concat(args); |
| path = binary; |
| } |
| return fork(path, args, options); |
| }; |
| } |
| |
| }).call(this); |