From fc5f07c879a9cf9f916f2f9363d3af38bb5caea1 Mon Sep 17 00:00:00 2001 From: Matthias Fripp Date: Mon, 23 Jul 2018 09:44:11 -1000 Subject: [PATCH] Use parentheses to force evaluation of class statement as expression in pool.js --- lib/mixins/pool.js | 9 +++------ 1 file changed, 3 insertions(+), 6 deletions(-) diff --git a/lib/mixins/pool.js b/lib/mixins/pool.js index 26125b3..ade2a20 100644 --- a/lib/mixins/pool.js +++ b/lib/mixins/pool.js @@ -12,7 +12,7 @@ module.exports = class Pool { const Singular = capitalize(singular) const Plural = capitalize(plural) - const source = `class ${Plural}Pool extends Mixin { + const source = `(class ${Plural}Pool extends Mixin { init${Plural}Pool (${plural}Class, ${plural}Container) { this.${plural}Class = ${plural}Class this.${plural}Container = ${plural}Container @@ -56,13 +56,10 @@ module.exports = class Pool { this.used${Plural} = [] return this.unused${Plural} = [] } - } - ${Plural}Pool` + })` const sandbox = {Mixin, atom, console} - const context = vm.createContext(sandbox) - - const mixin = vm.runInContext(source, context, `${plural}-pool.vm`) + const mixin = vm.runInNewContext(source, sandbox, `${plural}-pool.vm`) mixin.includeInto(this) } }