types.js/Set.js
Alex A. Naanou 669b4bcd23 migrated most types...
Signed-off-by: Alex A. Naanou <alex.nanou@gmail.com>
2020-10-04 04:40:16 +03:00

32 lines
1.0 KiB
JavaScript

/**********************************************************************
*
*
*
**********************************************************************/
((typeof define)[0]=='u'?function(f){module.exports=f(require)}:define)
(function(require){ var module={} // make module AMD/node compatible...
/*********************************************************************/
/*********************************************************************/
// Set set operation shorthands...
Set.prototype.unite = function(other){
return new Set([...this, ...other]) }
Set.prototype.intersect = function(other){
var test = other.has ? 'has' : 'includes'
return new Set([...this]
.filter(function(e){ return other[test](e) })) }
Set.prototype.subtract = function(other){
other = new Set(other)
return new Set([...this]
.filter(function(e){ return !other.has(e) })) }
/**********************************************************************
* vim:set ts=4 sw=4 : */ return module })