'use strict'; // https://github.com/tc39/proposal-explicit-resource-management var call = require('../internals/function-call'); var defineBuiltIn = require('../internals/define-built-in'); var getMethod = require('../internals/get-method'); var hasOwn = require('../internals/has-own-property'); var wellKnownSymbol = require('../internals/well-known-symbol'); var IteratorPrototype = require('../internals/iterators-core').IteratorPrototype; var DISPOSE = wellKnownSymbol('dispose'); if (!hasOwn(IteratorPrototype, DISPOSE)) { defineBuiltIn(IteratorPrototype, DISPOSE, function () { var $return = getMethod(this, 'return'); if ($return) call($return, this); }); }