1.0.2 • Published 6 years ago

variadics v1.0.2

Weekly downloads
2
License
ISC
Repository
github
Last release
6 years ago

Adds a few variadic functions for operators, as well as functions to convert between array functions and spread functions. The functions generally go from left-to-right.

Add

add :: (...a) -> a

Adds any number of values (number or string).

And

and :: (...Boolean) -> Boolean

Checks if all of the boolean values passed are true.

Apply

apply :: ((...a) -> b, [a]) -> b

Applies a function that takes a spread to an array.

ApplySpread

applySpread :: ([a] -> b, ...a) -> b

Applies a function that takes an array to a spread.

Bitand

bitand :: (...Number) -> Number

Applies the bitwise and operator & to the values.

Bitor

bitor :: (...Number) -> Number

Applies the bitwise and operator | to the values.

Bitxor

bitxor :: (...Number) -> Number

Applies the bitwise and operator ^ to the values.

Divide

divide :: (...Number) -> Number

Divides all of the values by each other.

Equals

equals :: (...a) -> Boolean

Checks if all the values are equal.

Exponent

exponent :: (...Number) -> Number

Applies the exponentiation operator ** to the values.

GreaterEquals

greaterEqual :: (...Number) -> Boolean

Checks if all the numbers are greater than or equal to the next number in succession.

GreaterThan

greaterThan :: (...Number) -> Boolean

Checks if all the numbers are greater than the next number in succession.

LessEquals

lessEqual :: (...Number) -> Boolean

Checks if all the numbers are less than or equal to the next number in succession.

LessThan

lessThan :: (...Number) -> Boolean

Checks if all the numbers are less than the next number in succession.

Max

max :: [Number] -> Number

Returns the largest number in the array.

Min

min :: [Number] -> Number

Returns the smallest number in the array.

Modulo

modulo :: (...Number) -> Number

Applies the modulo operator % to the values.

Multiply

multiply :: (...Number) -> Number

Multiplies all of the values together.

Or

or :: (...Boolean) -> Boolean

Checks if any of the boolean values passed are true.

Product

product :: [Number] -> Number

Returns the product of the numbers in the array.

Shiftl

shiftl :: (...Number) -> Number

Applies the left shift operator << to the values.

Shiftr

shiftr :: (...Number) -> Number

Applies the right shift operator >> to the values.

Subtract

subtract :: (...Number) -> Number

Subtracts all of the values from each other.

Sum

sum :: [Number] -> Number

Returns the sum of the values in the array.

ToArrayFn

toArrayFn :: ((...a) -> b) -> ([a] -> b)

Converts a function that takes a spread to one that takes an array.

ToSpreadFn

toSpreadFn :: ([a] -> b) -> ((...a) -> b)

Converts a function that takes an array to one that takes a spread.

UnsignedShiftr

unSignedShiftr :: (...Number) -> Number

Applies the unsigned right shift operator >>> to the values.

WeakEquals

weakEquals :: (...a) -> Boolean

Checks if all the values are equal through the weak equality operator ==.