diff --git a/lib/js-yaml.js b/lib/js-yaml.js index 6bf6c119..4ce558e4 100644 --- a/lib/js-yaml.js +++ b/lib/js-yaml.js @@ -1,15 +1,17 @@ 'use strict'; -var fs = require('fs'), - _loader = require('./js-yaml/loader'); +var fs = require('fs'); +var _loader = require('./js-yaml/loader'); var jsyaml = module.exports = {}; jsyaml.scan = function scan(stream, callback, Loader) { - var loader = new (Loader || _loader.SafeLoader)(stream); + Loader = (Loader || _loader.SafeLoader); + + var loader = new Loader(stream); while (loader.checkToken()) { callback(loader.getToken()); } @@ -17,20 +19,25 @@ jsyaml.scan = function scan(stream, callback, Loader) { jsyaml.compose = function compose(stream, Loader) { - var loader = new (Loader || _loader.SafeLoader)(stream); + Loader = (Loader || _loader.SafeLoader); + + var loader = new Loader(stream); return loader.getSingleNode(); }; jsyaml.load = function load(stream, Loader) { - var loader = new (Loader || _loader.Loader)(stream); + Loader = (Loader || _loader.Loader); + + var loader = new Loader(stream); return loader.getSingleData(); }; jsyaml.loadAll = function loadAll(stream, callback, Loader) { - var loader = new (Loader || _loader.Loader)(stream); + Loader = (Loader || _loader.Loader); + var loader = new Loader(stream); while (loader.checkData()) { callback(loader.getData()); } @@ -63,7 +70,7 @@ jsyaml.addConstructor = function addConstructor(tag, constructor, Loader) { (function () { var require_handler = function (module, filename) { var fd = fs.openSync(filename, 'r'); - + // fill in documents module.exports = []; jsyaml.loadAll(fd, function (doc) { module.exports.push(doc); });