-- Hoogle documentation, generated by Haddock
-- See Hoogle, http://www.haskell.org/hoogle/


-- | Wrap a function's return value with another function
--   
--   Wrap a function's return value with another function
@package wrap
@version 0.0.0


-- | Wrap a function's return value with another function.
module Data.Function.Wrap

-- | Wrap the result of a function applied to 1 argument.
wrap1 :: (r -> s) -> (a1 -> r) -> (a1 -> s)

-- | Wrap the result of a function applied to 2 arguments.
wrap2 :: (r -> s) -> (a1 -> a2 -> r) -> (a1 -> a2 -> s)

-- | Wrap the result of a function applied to 3 arguments.
wrap3 :: (r -> s) -> (a1 -> a2 -> a3 -> r) -> (a1 -> a2 -> a3 -> s)

-- | Wrap the result of a function applied to 4 arguments.
wrap4 :: (r -> s) -> (a1 -> a2 -> a3 -> a4 -> r) -> (a1 -> a2 -> a3 -> a4 -> s)

-- | Wrap the result of a function applied to 5 arguments.
wrap5 :: (r -> s) -> (a1 -> a2 -> a3 -> a4 -> a5 -> r) -> (a1 -> a2 -> a3 -> a4 -> a5 -> s)

-- | Wrap the result of a function applied to 6 arguments.
wrap6 :: (r -> s) -> (a1 -> a2 -> a3 -> a4 -> a5 -> a6 -> r) -> (a1 -> a2 -> a3 -> a4 -> a5 -> a6 -> s)

-- | Wrap the result of a function applied to 7 arguments.
wrap7 :: (r -> s) -> (a1 -> a2 -> a3 -> a4 -> a5 -> a6 -> a7 -> r) -> (a1 -> a2 -> a3 -> a4 -> a5 -> a6 -> a7 -> s)

-- | Wrap the result of a function applied to 8 arguments.
wrap8 :: (r -> s) -> (a1 -> a2 -> a3 -> a4 -> a5 -> a6 -> a7 -> a8 -> r) -> (a1 -> a2 -> a3 -> a4 -> a5 -> a6 -> a7 -> a8 -> s)

-- | Wrap the result of a function applied to 9 arguments.
wrap9 :: (r -> s) -> (a1 -> a2 -> a3 -> a4 -> a5 -> a6 -> a7 -> a8 -> a9 -> r) -> (a1 -> a2 -> a3 -> a4 -> a5 -> a6 -> a7 -> a8 -> a9 -> s)

-- | Wrap the result of a function applied to 10 arguments.
wrap10 :: (r -> s) -> (a1 -> a2 -> a3 -> a4 -> a5 -> a6 -> a7 -> a8 -> a9 -> a10 -> r) -> (a1 -> a2 -> a3 -> a4 -> a5 -> a6 -> a7 -> a8 -> a9 -> a10 -> s)

-- | Wrap the result of a function applied to 11 arguments.
wrap11 :: (r -> s) -> (a1 -> a2 -> a3 -> a4 -> a5 -> a6 -> a7 -> a8 -> a9 -> a10 -> a11 -> r) -> (a1 -> a2 -> a3 -> a4 -> a5 -> a6 -> a7 -> a8 -> a9 -> a10 -> a11 -> s)

-- | Wrap the result of a function applied to 12 arguments.
wrap12 :: (r -> s) -> (a1 -> a2 -> a3 -> a4 -> a5 -> a6 -> a7 -> a8 -> a9 -> a10 -> a11 -> a12 -> r) -> (a1 -> a2 -> a3 -> a4 -> a5 -> a6 -> a7 -> a8 -> a9 -> a10 -> a11 -> a12 -> s)
