Simplify fp map.

This commit is contained in:
John-David Dalton
2016-01-13 22:01:24 -08:00
parent fe3d86bf13
commit 06395f8436
3 changed files with 24 additions and 24 deletions

View File

@@ -1,5 +1,5 @@
var mapping = require('./mapping.js'),
mutateMap = mapping.mutateMap;
mutateMap = mapping.mutate;
/**
* The base implementation of `convert` which accepts a `util` object of methods
@@ -158,13 +158,13 @@ function baseConvert(util, name, func) {
}
var result;
each(mapping.caps, function(cap) {
each(mapping.aryMethodMap[cap], function(otherName) {
each(mapping.aryMethod[cap], function(otherName) {
if (name == otherName) {
result = ary(func, cap);
if (cap > 1 && !mapping.skipReargMap[name]) {
result = rearg(result, mapping.methodReargMap[name] || mapping.aryReargMap[cap]);
if (cap > 1 && !mapping.skipRearg[name]) {
result = rearg(result, mapping.methodRearg[name] || mapping.aryRearg[cap]);
}
var n = !isLib && mapping.aryIterateeMap[name];
var n = !isLib && mapping.aryIteratee[name];
if (n) {
result = iterateeAry(result, n);
}
@@ -185,8 +185,8 @@ function baseConvert(util, name, func) {
// Iterate over methods for the current ary cap.
var pairs = [];
each(mapping.caps, function(cap) {
each(mapping.aryMethodMap[cap], function(key) {
var func = _[mapping.keyMap[key] || key];
each(mapping.aryMethod[cap], function(key) {
var func = _[mapping.key[key] || key];
if (func) {
pairs.push([key, wrap(key, func)]);
}
@@ -200,7 +200,7 @@ function baseConvert(util, name, func) {
// Wrap the lodash method and its aliases.
each(keys(_), function(key) {
each(mapping.aliasMap[key] || [], function(alias) {
each(mapping.alias[key] || [], function(alias) {
_[alias] = _[key];
});
});

View File

@@ -1,7 +1,7 @@
module.exports = {
/** Used to map method names to their aliases. */
'aliasMap': {
'alias': {
'ary': ['nAry'],
'overEvery': ['allPass'],
'overSome': ['somePass'],
@@ -31,7 +31,7 @@ module.exports = {
},
/** Used to map method names to their iteratee ary. */
'aryIterateeMap': {
'aryIteratee': {
'assignWith': 2,
'cloneDeepWith': 1,
'cloneWith': 1,
@@ -71,7 +71,7 @@ module.exports = {
},
/** Used to map ary to method names. */
'aryMethodMap': {
'aryMethod': {
1: (
'attempt,ceil,create,curry,curryRight,floor,fromPairs,iteratee,invert,over,' +
'overEvery,overSome,memoize,method,methodOf,mixin,rest,reverse,round,' +
@@ -98,14 +98,14 @@ module.exports = {
},
/** Used to map ary to rearg configs by method ary. */
'aryReargMap': {
'aryRearg': {
2: [1, 0],
3: [2, 1, 0],
4: [3, 2, 0, 1]
},
/** Used to map ary to rearg configs by method names. */
'methodReargMap': {
'methodRearg': {
'clamp': [2, 0, 1],
'reduce': [2, 0, 1],
'reduceRight': [2, 0, 1],
@@ -119,14 +119,14 @@ module.exports = {
'caps': [1, 2, 3, 4],
/** Used to map keys to other keys. */
'keyMap': {
'key': {
'curryN': 'curry',
'curryRightN': 'curryRight',
'getOr': 'get'
},
/** Used to identify methods which mutate arrays or objects. */
'mutateMap': {
'mutate': {
'array': {
'fill': true,
'pull': true,
@@ -153,7 +153,7 @@ module.exports = {
},
/** Used to track methods that skip `_.rearg`. */
'skipReargMap': {
'skipRearg': {
'assign': true,
'assignIn': true,
'defaults': true,