blob: f094f098047d04ce95627f04769aad10e92aafd7 [file] [log] [blame] [edit]
function flipFn(fn){
return (...input) => {
if (input.length === 1){
return holder => fn(holder, input[ 0 ])
} else if (input.length === 2){
return fn(input[ 1 ], input[ 0 ])
} else if (input.length === 3){
return fn(
input[ 1 ], input[ 0 ], input[ 2 ]
)
} else if (input.length === 4){
return fn(
input[ 1 ], input[ 0 ], input[ 2 ], input[ 3 ]
)
}
throw new Error('R.flip doesn\'t work with arity > 4')
}
}
export function flip(fn){
return flipFn(fn)
}