@@ -4,19 +4,19 @@ var has = require('../internals/set-helpers').has;
4
4
var size = require ( '../internals/set-size' ) ;
5
5
var getSetRecord = require ( '../internals/get-set-record' ) ;
6
6
var iterateSet = require ( '../internals/set-iterate' ) ;
7
- var iterate = require ( '../internals/iterate' ) ;
7
+ var iterateSimple = require ( '../internals/iterate-simple' ) ;
8
+ var iteratorClose = require ( '../internals/iterator-close' ) ;
8
9
9
10
// `Set.prototype.isDisjointFrom` method
10
11
// https://tc39.github.io/proposal-set-methods/#Set.prototype.isDisjointFrom
11
12
module . exports = function isDisjointFrom ( other ) {
12
13
var O = aSet ( this ) ;
13
14
var otherRec = getSetRecord ( other ) ;
14
- return false !== ( size ( O ) <= otherRec . size
15
- ? iterateSet ( O , function ( e ) {
16
- if ( otherRec . includes ( e ) ) return false ;
17
- } , true )
18
- : ! iterate ( otherRec . getIterator ( ) , function ( e , stop ) {
19
- if ( has ( O , e ) ) return stop ( ) ;
20
- } , { IS_ITERATOR : true , INTERRUPTED : true } ) . stopped
21
- ) ;
15
+ if ( size ( O ) <= otherRec . size ) return iterateSet ( O , function ( e ) {
16
+ if ( otherRec . includes ( e ) ) return false ;
17
+ } , true ) !== false ;
18
+ var iterator = otherRec . getIterator ( ) ;
19
+ return iterateSimple ( iterator , function ( e ) {
20
+ if ( has ( O , e ) ) return iteratorClose ( iterator , 'normal' , false ) ;
21
+ } ) !== false ;
22
22
} ;
0 commit comments