diff options
Diffstat (limited to 'js/dojo/dojox/lang/aspect/profiler.js')
| -rw-r--r-- | js/dojo/dojox/lang/aspect/profiler.js | 37 |
1 files changed, 37 insertions, 0 deletions
diff --git a/js/dojo/dojox/lang/aspect/profiler.js b/js/dojo/dojox/lang/aspect/profiler.js new file mode 100644 index 0000000..cec4500 --- /dev/null +++ b/js/dojo/dojox/lang/aspect/profiler.js @@ -0,0 +1,37 @@ +//>>built +// wrapped by build app +define("dojox/lang/aspect/profiler", ["dijit","dojo","dojox"], function(dijit,dojo,dojox){ +dojo.provide("dojox.lang.aspect.profiler"); + +(function(){ + var aop = dojox.lang.aspect, + uniqueNumber = 0; + + var Profiler = function(title){ + this.args = title ? [title] : []; + this.inCall = 0; + }; + dojo.extend(Profiler, { + before: function(/*arguments*/){ + if(!(this.inCall++)){ + console.profile.apply(console, this.args); + } + }, + after: function(/*excp*/){ + if(!--this.inCall){ + console.profileEnd(); + } + } + }); + + aop.profiler = function(/*String?*/ title){ + // summary: + // Returns an object, which can be used to time calls to methods. + // + // title: + // The optional name of the profile section. + + return new Profiler(title); // Object + }; +})(); +}); |
