//>>built
define("dojox/lang/aspect/memoizer",["dijit","dojo","dojox"],function(n,h,k){h.provide("dojox.lang.aspect.memoizer");(function(){var f=k.lang.aspect,l={around:function(d){var c=f.getContext(),e=c.joinPoint,b=c.instance,a;if((a=b.__memoizerCache)&&(a=a[e.targetName])&&d in a)return a[d];c=f.proceed.apply(null,arguments);(a=b.__memoizerCache)||(a=b.__memoizerCache={});(b=a[e.targetName])||(b=a[e.targetName]={});return b[d]=c}},m=function(d){return{around:function(){var c=f.getContext(),e=c.joinPoint,
b=c.instance,a,g=d.apply(b,arguments);if((a=b.__memoizerCache)&&(a=a[e.targetName])&&g in a)return a[g];c=f.proceed.apply(null,arguments);(a=b.__memoizerCache)||(a=b.__memoizerCache={});(b=a[e.targetName])||(b=a[e.targetName]={});return b[g]=c}}};f.memoizer=function(d){return 0==arguments.length?l:m(d)}})()});