Skip to content

Commit

Permalink
Allow loading of .sjs files in node.js
Browse files Browse the repository at this point in the history
Example program now works:

    var sjs = require('sweet.js'),
        example = require('./example');

Where ./example.sjs contains:

    module A {
	case ($a + $b) => {
	    $a
	}
    }

    exports.one = A(1 + 2);
  • Loading branch information
puffnfresh committed Oct 4, 2012
1 parent f645704 commit c8d9d6f
Show file tree
Hide file tree
Showing 2 changed files with 12 additions and 0 deletions.
6 changes: 6 additions & 0 deletions lib/sweet.js
Original file line number Diff line number Diff line change
Expand Up @@ -5123,6 +5123,12 @@ var fs = require("fs");
exports.syntaxToTokens = syntaxToTokens;
exports.tokensToSyntax = tokensToSyntax;

// Alow require('./example') for an example.sjs file.
require.extensions['.sjs'] = function(module, filename) {
var content = require('fs').readFileSync(filename, 'utf8');
module._compile(gen.generate(parse(content)), filename);
};

// Deep copy.
exports.Syntax = (function () {
var name, types = {};
Expand Down
6 changes: 6 additions & 0 deletions src/sweet.js
Original file line number Diff line number Diff line change
Expand Up @@ -5123,6 +5123,12 @@ var fs = require("fs");
exports.syntaxToTokens = syntaxToTokens;
exports.tokensToSyntax = tokensToSyntax;

// Alow require('./example') for an example.sjs file.
require.extensions['.sjs'] = function(module, filename) {
var content = require('fs').readFileSync(filename, 'utf8');
module._compile(gen.generate(parse(content)), filename);
};

// Deep copy.
exports.Syntax = (function () {
var name, types = {};
Expand Down

0 comments on commit c8d9d6f

Please sign in to comment.