//>>built
define("dojox/lang/docs",["dojo","dijit","dojox"],function(f,x,r){f.provide("dojox.lang.docs");(function(){function w(){}var g={},h=[],m=r.lang.docs._loadedDocs={},k=function(c,a){g[a]=c},p=function(c){var a=c.type||"",b,e=!1,d=!1,l,a=a.replace(/\?/,function(){e=!0;return""}),a=a.replace(/\[\]/,function(){d=!0;return""});a.match(/HTML/)?a="string":"String"==a||"Number"==a||"Boolean"==a||"Object"==a||"Array"==a||"Integer"==a||"Function"==a?a=a.toLowerCase():"bool"==a?a="boolean":a?(b=f.getObject(a)||
{},l=!0):b={};b=b||{type:a};d&&(b={items:b,type:"array"},l=!1);if(!l){if(e)b.optional=!0;if(/const/.test(c.tags))b.readonly=!0}return b},s=function(c,a){var b=m[a];if(b){c.description=b.description;c.properties={};c.methods={};if(b.properties)for(var e=b.properties,d=0,l=e.length;d<l;d++)if("prototype"==e[d].scope)(c.properties[e[d].name]=p(e[d])).description=e[d].summary;if(b.methods){e=b.methods;for(d=0,l=e.length;d<l;d++)if((a=e[d].name)&&"prototype"==e[d].scope){var n=c.methods[a]={};n.description=
e[d].summary;var j=e[d].parameters;if(j){n.parameters=[];for(var o=0,g=j.length;o<g;o++){var h=j[o],k=n.parameters[o]=p(h);k.name=h.name;k.optional="optional"==h.usage}}if((j=e[d]["return-types"])&&j[0])if(j=p(j[0]),j.type)n.returns=j}}(b=b.superclass)&&(c["extends"]=f.getObject(b))}},q=function(c){h.push(c)},t=f.declare;f.declare=function(c){var a=t.apply(this,arguments);k(a,c);return a};f.mixin(f.declare,t);var u,v=f.require;f.require=function(c){q(c);return v.apply(this,arguments)};r.lang.docs.init=
function(c){function a(){f.require=v;h=null;try{f.xhrGet({sync:!c,url:f.baseUrl+"../util/docscripts/api.json",handleAs:"text"}).addCallbacks(function(a){m=(new Function("return "+a))();k=s;for(var b in g)k(g[b],b);g=null},w)}catch(a){}}if(u)return null;u=!0;var b=function(a,b){return f.xhrGet({sync:b||!c,url:f.baseUrl+"../util/docscripts/api/"+a+".json",handleAs:"text"}).addCallback(function(a){var a=(new Function("return "+a))(),b;for(b in a)m[b]||(m[b]=a[b])})};try{var e=h.shift();b(e,!0).addCallbacks(function(){q=
function(a){if(!m[a])try{b(a)}catch(c){m[a]={}}};f.forEach(h,function(a){q(a)});h=null;k=s;for(i in g)k(g[i],i);g=null},a)}catch(d){a()}return null}})()});