00001 var baseMatches = require('./_baseMatches'),
00002 baseMatchesProperty = require('./_baseMatchesProperty'),
00003 identity = require('./identity'),
00004 isArray = require('./isArray'),
00005 property = require('./property');
00006
00014 function baseIteratee(value) {
00015
00016
00017 if (typeof value == 'function') {
00018 return value;
00019 }
00020 if (value == null) {
00021 return identity;
00022 }
00023 if (typeof value == 'object') {
00024 return isArray(value)
00025 ? baseMatchesProperty(value[0], value[1])
00026 : baseMatches(value);
00027 }
00028 return property(value);
00029 }
00030
00031 module.exports = baseIteratee;