convertible-1.0.9: Typeclasses and instances for converting between typesSource codeContentsIndex
Data.Convertible.Base
Portabilityportable
Stabilityprovisional
MaintainerJohn Goerzen <jgoerzen@complete.org>
Contents
The conversion process
Handling the results
Description
Synopsis
convert :: Convertible a b => a -> b
class Convertible a b where
safeConvert :: a -> ConvertResult b
type ConvertResult a = Either ConvertError a
data ConvertError = ConvertError {
convSourceValue :: String
convSourceType :: String
convDestType :: String
convErrorMessage :: String
}
convError :: (Show a, Typeable a, Typeable b) => String -> a -> ConvertResult b
prettyConvertError :: ConvertError -> String
The conversion process
convert :: Convertible a b => a -> bSource
Convert from one type of data to another. Raises an exception if there is an error with the conversion. For a function that does not raise an exception in that case, see safeConvert.
class Convertible a b whereSource
A typeclass that represents something that can be converted. A Convertible a b instance represents an a that can be converted to a b.
Methods
safeConvert :: a -> ConvertResult bSource
Convert a to b, returning Right on success and Left on error. For a simpler interface, see convert.
Handling the results
type ConvertResult a = Either ConvertError aSource
The result of a safe conversion via safeConvert.
data ConvertError Source
How we indicate that there was an error.
Constructors
ConvertError
convSourceValue :: String
convSourceType :: String
convDestType :: String
convErrorMessage :: String
convError :: (Show a, Typeable a, Typeable b) => String -> a -> ConvertResult bSource
prettyConvertError :: ConvertError -> StringSource
Produced by Haddock version 2.6.1