for(var path in locations){ for(var i = 0, fn; fn = locations[path][i]; i++){ var key = fn; if(dojo.isArray(fn)){ key = fn[0]; fn = fn[1]; } if(dojo.isString(key)){ if(key.substr(0, 5) == "attr:"){ var attr = fn; if(attr.substr(0, 5) == "attr:"){ attr = attr.slice(5); } dd.register._registry.attributes.push([attr, base + "." + path + "." + attr]); } key = key.toLowerCase(); } dd.register._registry[type].push([ key, fn, base + "." + path ]); } }