Export readNameCache / writeNameCache

This commit is contained in:
Mihai Bazon
2015-03-17 10:05:49 +02:00
parent aa45f6586e
commit 80cfd063e2
2 changed files with 37 additions and 29 deletions

View File

@@ -193,3 +193,38 @@ exports.describe_ast = function() {
doitem(UglifyJS.AST_Node);
return out + "";
};
exports.readNameCache = function(filename, key) {
var cache = null;
if (filename) {
try {
var cache = fs.readFileSync(filename, "utf8");
cache = JSON.parse(cache)[key];
if (!cache) throw "init";
cache.props = UglifyJS.Dictionary.fromObject(cache.props);
} catch(ex) {
cache = {
cname: -1,
props: new UglifyJS.Dictionary()
};
}
}
return cache;
};
exports.writeNameCache = function(filename, key, cache) {
if (filename) {
var data;
try {
data = fs.readFileSync(filename, "utf8");
data = JSON.parse(data);
} catch(ex) {
data = {};
}
data[key] = {
cname: cache.cname,
props: cache.props.toObject()
};
fs.writeFileSync(filename, JSON.stringify(data, null, 2), "utf8");
}
};