//>>built define("dojox/collections/Dictionary",["dojo/_base/kernel","dojo/_base/array","./_base"],function(_1,_2,_3){ _3.Dictionary=function(_4){ var _5={}; this.count=0; var _6={}; this.add=function(k,v){ var b=(k in _5); _5[k]=new _3.DictionaryEntry(k,v); if(!b){ this.count++; } }; this.clear=function(){ _5={}; this.count=0; }; this.clone=function(){ return new _3.Dictionary(this); }; this.contains=this.containsKey=function(k){ if(_6[k]){ return false; } return (_5[k]!=null); }; this.containsValue=function(v){ var e=this.getIterator(); while(e.get()){ if(e.element.value==v){ return true; } } return false; }; this.entry=function(k){ return _5[k]; }; this.forEach=function(fn,_7){ var a=[]; for(var p in _5){ if(!_6[p]){ a.push(_5[p]); } } _1.forEach(a,fn,_7); }; this.getKeyList=function(){ return (this.getIterator()).map(function(_8){ return _8.key; }); }; this.getValueList=function(){ return (this.getIterator()).map(function(_9){ return _9.value; }); }; this.item=function(k){ if(k in _5){ return _5[k].valueOf(); } return undefined; }; this.getIterator=function(){ return new _3.DictionaryIterator(_5); }; this.remove=function(k){ if(k in _5&&!_6[k]){ delete _5[k]; this.count--; return true; } return false; }; if(_4){ var e=_4.getIterator(); while(e.get()){ this.add(e.element.key,e.element.value); } } }; return _3.Dictionary; });