Clazz.declarePackage("JS");
Clazz.load(["JU.Lst", "$.BS"], "JS.SmilesRingSet", null, function(){
var c$ = Clazz.decorateAsClass(function(){
this.bs = null;
Clazz.instantialize(this, arguments);}, JS, "SmilesRingSet", JU.Lst);
Clazz.prepareFields (c$, function(){
this.bs =  new JU.BS();
});
Clazz.makeConstructor(c$, 
function(){
Clazz.superConstructor (this, JS.SmilesRingSet, []);
});
Clazz.defineMethod(c$, "addSet", 
function(set, htEdgeMap){
for (var i = set.size(); --i >= 0; ) {
var r = set.get(i);
this.addRing(r);
r.addEdges(htEdgeMap);
}
}, "JS.SmilesRingSet,java.util.Hashtable");
Clazz.defineMethod(c$, "addRing", 
function(ring){
this.addLast(ring);
ring.$set = this;
this.bs.or(ring);
}, "JS.SmilesRing");
Clazz.defineMethod(c$, "getElectronCount", 
function(eCounts){
var eCount = 0;
for (var j = this.bs.nextSetBit(0); j >= 0; j = this.bs.nextSetBit(j + 1)) eCount += eCounts[j];

return eCount;
}, "~A");
});
;//5.0.1-v7 Tue Jul 22 18:14:29 CDT 2025
