И вот так нельзя сделать?:
TSN.load = function (path, name, config) {
config = new Config(config);
var fullPath = LIB.path.join(config.templateRoot, path);
if (config.cache === true && TSN.cache.hasOwnProperty(fullPath)) {
return TSN.cache[fullPath];
}
config.path = LIB.path.dirname(fullPath);
return TSN.compile(LIB.fileSystem.readFileSync(fullPath, config.encoding), name || fullPath, config);
};
Могло бы превратиться в нечто подобное:
TSN.load = function {
LIB.path.join
TSN.cache
LIB.path.dirname
TSN.compile
LIB.fileSystem.readFileSync
};
А по моему вполне реально такой парсер написать.