1
0
mirror of https://github.com/gryf/pentadactyl-pm.git synced 2026-02-09 10:35:45 +01:00

Minor compat changes.

--HG--
extra : rebase_source : d40d66e2cd689f43243a837dbd19fe5e0ec8d462
This commit is contained in:
Kris Maglione
2014-06-27 13:24:34 -07:00
parent bfd2d975f8
commit e8dce1107a
4 changed files with 46 additions and 26 deletions

View File

@@ -416,26 +416,43 @@ var iterAll = deprecated("iter", function iterAll() iter.apply(null, arguments))
var RealSet = Set;
let Set_add = RealSet.prototype.add;
RealSet.prototype.add = function RealSet_add(val) {
let res = this.has(val);
Set_add.apply(this, arguments);
return res;
};
RealSet.prototype.difference = function RealSet_difference(set) {
return RealSet(i for (i of this) if (!set.has(i)));
};
Object.defineProperty(RealSet.prototype, "add", {
configurable: true,
writable: true,
value: function RealSet_add(val) {
let res = this.has(val);
Set_add.apply(this, arguments);
return res;
},
});
RealSet.prototype.intersection = function RealSet_intersection(set) {
return RealSet(i for (i of this) if (set.has(i)));
};
Object.defineProperty(RealSet.prototype, "difference", {
configurable: true,
writable: true,
value: function RealSet_difference(set) {
return RealSet(i for (i of this) if (!set.has(i)));
},
});
RealSet.prototype.union = function RealSet_union(set) {
let res = RealSet(this);
for (let item of set)
res.add(item);
return res;
};
Object.defineProperty(RealSet.prototype, "intersection", {
configurable: true,
writable: true,
value: function RealSet_intersection(set) {
return RealSet(i for (i of this) if (set.has(i)));
},
});
Object.defineProperty(RealSet.prototype, "union", {
configurable: true,
writable: true,
value: function RealSet_union(set) {
let res = RealSet(this);
for (let item of set)
res.add(item);
return res;
},
});
/**
* Utility for managing sets of strings. Given an array, returns an