add support for unicode regexes - closes #11

This commit is contained in:
Sebastian McKenzie
2014-10-09 14:24:04 +11:00
parent 66b347576c
commit 21f039e775
6 changed files with 25 additions and 2 deletions

View File

@@ -107,5 +107,6 @@ transform.transformers = {
blockBinding: require("./transformers/block-binding"),
modules: require("./transformers/modules"),
restParameters: require("./transformers/rest-parameters"),
forOf: require("./transformers/for-of")
forOf: require("./transformers/for-of"),
unicodeRegex: require("./transformers/unicode-regex")
};

View File

@@ -0,0 +1,15 @@
var regexpu = require("regexpu");
var b = require("ast-types").builders;
var _ = require("lodash");
exports.Literal = function (node) {
var regex = node.regex;
if (!regex) return;
var flags = regex.flags.split("")
if (!_.contains(regex.flags, "u")) return;
_.pull(flags, "u");
var pattern = regexpu.rewritePattern(regex.pattern, regex.flags);
return b.literal(new RegExp(pattern, flags.join("")));
};