Set.js 811 Bytes
//>>built
define(["./_base","./ArrayList"],function(g,f){g.Set=new function(){function c(a){return a.constructor==Array?new f(a):a}this.union=function(a,b){a=c(a);b=c(b);a=new f(a.toArray());for(b=b.getIterator();!b.atEnd();){var d=b.get();a.contains(d)||a.add(d)}return a};this.intersection=function(a,b){a=c(a);b=c(b);var d=new f;for(b=b.getIterator();!b.atEnd();){var e=b.get();a.contains(e)&&d.add(e)}return d};this.difference=function(a,b){a=c(a);b=c(b);var d=new f;for(a=a.getIterator();!a.atEnd();){var e=
a.get();b.contains(e)||d.add(e)}return d};this.isSubSet=function(a,b){a=c(a);b=c(b);for(a=a.getIterator();!a.atEnd();)if(!b.contains(a.get()))return!1;return!0};this.isSuperSet=function(a,b){a=c(a);b=c(b);for(b=b.getIterator();!b.atEnd();)if(!a.contains(b.get()))return!1;return!0}};return g.Set});