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

-- | The 1-tuple type or single-value "collection"
--   
--   This package provides a canonical anonymous 1-tuple type missing from
--   Haskell for attaching typeclass instances.
--   
--   NOTE: There is also the OneTuple package which by using a boxed
--   data-type provides a 1-tuple type which has laziness
--   properties which are more faithful to the ones of Haskell's native
--   tuples; whereas the primary purpose of Only is to provide the
--   traditionally so named type-wrapper for attaching typeclass instances.
@package Only
@version 0.1

module Data.Tuple.Only

-- | The 1-tuple type or single-value "collection".
--   
--   This type is structurally equivalent to the Identity type, but
--   its intent is more about serving as the anonymous 1-tuple type missing
--   from Haskell for attaching typeclass instances.
--   
--   Parameter usage example:
--   
--   
--   encodeSomething (Only (42::Int))
--   
--   
--   Result usage example:
--   
--   
--   xs <- decodeSomething
--   forM_ xs $ \(Only id) -> {- ... -}
--   
newtype Only a
Only :: a -> Only a
[fromOnly] :: Only a -> a
instance GHC.Internal.Data.Data.Data a => GHC.Internal.Data.Data.Data (Data.Tuple.Only.Only a)
instance GHC.Classes.Eq a => GHC.Classes.Eq (Data.Tuple.Only.Only a)
instance GHC.Internal.Base.Functor Data.Tuple.Only.Only
instance GHC.Internal.Generics.Generic (Data.Tuple.Only.Only a)
instance Control.DeepSeq.NFData a => Control.DeepSeq.NFData (Data.Tuple.Only.Only a)
instance GHC.Classes.Ord a => GHC.Classes.Ord (Data.Tuple.Only.Only a)
instance GHC.Internal.Read.Read a => GHC.Internal.Read.Read (Data.Tuple.Only.Only a)
instance GHC.Internal.Show.Show a => GHC.Internal.Show.Show (Data.Tuple.Only.Only a)
