1 |
3a515b92
|
cagy
|
var LazyWrapper = require('./_LazyWrapper'),
|
2 |
|
|
getData = require('./_getData'),
|
3 |
|
|
getFuncName = require('./_getFuncName'),
|
4 |
|
|
lodash = require('./wrapperLodash');
|
5 |
|
|
|
6 |
|
|
/**
|
7 |
|
|
* Checks if `func` has a lazy counterpart.
|
8 |
|
|
*
|
9 |
|
|
* @private
|
10 |
|
|
* @param {Function} func The function to check.
|
11 |
|
|
* @returns {boolean} Returns `true` if `func` has a lazy counterpart,
|
12 |
|
|
* else `false`.
|
13 |
|
|
*/
|
14 |
|
|
function isLaziable(func) {
|
15 |
|
|
var funcName = getFuncName(func),
|
16 |
|
|
other = lodash[funcName];
|
17 |
|
|
|
18 |
|
|
if (typeof other != 'function' || !(funcName in LazyWrapper.prototype)) {
|
19 |
|
|
return false;
|
20 |
|
|
}
|
21 |
|
|
if (func === other) {
|
22 |
|
|
return true;
|
23 |
|
|
}
|
24 |
|
|
var data = getData(other);
|
25 |
|
|
return !!data && func === data[0];
|
26 |
|
|
}
|
27 |
|
|
|
28 |
|
|
module.exports = isLaziable;
|