]>
Commit | Line | Data |
---|---|---|
24c7594d BB |
1 | define(function() { |
2 | ||
3 | function addGetHookIf( conditionFn, hookFn ) { | |
4 | // Define the hook, we'll check on the first run if it's really needed. | |
5 | return { | |
6 | get: function() { | |
7 | if ( conditionFn() ) { | |
8 | // Hook not needed (or it's not possible to use it due | |
9 | // to missing dependency), remove it. | |
10 | delete this.get; | |
11 | return; | |
12 | } | |
13 | ||
14 | // Hook needed; redefine it so that the support test is not executed again. | |
15 | return (this.get = hookFn).apply( this, arguments ); | |
16 | } | |
17 | }; | |
18 | } | |
19 | ||
20 | return addGetHookIf; | |
21 | ||
22 | }); |