From de98e0b232509d5f40c135d540a70e415272ff85 Mon Sep 17 00:00:00 2001 From: Florian Dold Date: Wed, 3 May 2017 15:35:00 +0200 Subject: node_modules --- node_modules/ajv/lib/async.js | 218 ++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 218 insertions(+) create mode 100644 node_modules/ajv/lib/async.js (limited to 'node_modules/ajv/lib/async.js') diff --git a/node_modules/ajv/lib/async.js b/node_modules/ajv/lib/async.js new file mode 100644 index 000000000..173c2c00a --- /dev/null +++ b/node_modules/ajv/lib/async.js @@ -0,0 +1,218 @@ +'use strict'; + +module.exports = { + setup: setupAsync, + compile: compileAsync +}; + + +var util = require('./compile/util'); + +var ASYNC = { + '*': checkGenerators, + 'co*': checkGenerators, + 'es7': checkAsyncFunction +}; + +var TRANSPILE = { + 'nodent': getNodent, + 'regenerator': getRegenerator +}; + +var MODES = [ + { async: 'co*' }, + { async: 'es7', transpile: 'nodent' }, + { async: 'co*', transpile: 'regenerator' } +]; + + +var regenerator, nodent; + + +function setupAsync(opts, required) { + if (required !== false) required = true; + var async = opts.async + , transpile = opts.transpile + , check; + + switch (typeof transpile) { + case 'string': + var get = TRANSPILE[transpile]; + if (!get) throw new Error('bad transpiler: ' + transpile); + return (opts._transpileFunc = get(opts, required)); + case 'undefined': + case 'boolean': + if (typeof async == 'string') { + check = ASYNC[async]; + if (!check) throw new Error('bad async mode: ' + async); + return (opts.transpile = check(opts, required)); + } + + for (var i=0; i