basement-0.0.16: Foundation scrap box of array & string
LicenseBSD-style
MaintainerHaskell Foundation
Safe HaskellSafe-Inferred
LanguageHaskell2010

Basement.Cast

Description

 
Synopsis
  • class Cast source destination where
    • cast :: source -> destination

Documentation

class Cast source destination where Source #

Cast an object of type a to b.

Do not add instance of this class if the source type is not of the same size of the destination type. Also keep in mind this is casting a value of a given type into a destination type. The value won't be changed to fit the destination represention.

If you wish to convert a value of a given type into another type, look at From and TryFrom.

cast (-10 :: Int) :: Word === 18446744073709551606

Minimal complete definition

Nothing

Methods

cast :: source -> destination Source #

default cast :: (PrimType source, PrimType destination, PrimSize source ~ PrimSize destination) => source -> destination Source #

Instances

Instances details
Cast Int16 Word16 Source # 
Instance details

Defined in Basement.Cast

Methods

cast :: Int16 -> Word16 Source #

Cast Int32 Word32 Source # 
Instance details

Defined in Basement.Cast

Methods

cast :: Int32 -> Word32 Source #

Cast Int64 Word64 Source # 
Instance details

Defined in Basement.Cast

Methods

cast :: Int64 -> Word64 Source #

Cast Int64 Int Source # 
Instance details

Defined in Basement.Cast

Methods

cast :: Int64 -> Int Source #

Cast Int64 Word Source # 
Instance details

Defined in Basement.Cast

Methods

cast :: Int64 -> Word Source #

Cast Int8 Word8 Source # 
Instance details

Defined in Basement.Cast

Methods

cast :: Int8 -> Word8 Source #

Cast Word16 Int16 Source # 
Instance details

Defined in Basement.Cast

Methods

cast :: Word16 -> Int16 Source #

Cast Word32 Int32 Source # 
Instance details

Defined in Basement.Cast

Methods

cast :: Word32 -> Int32 Source #

Cast Word64 Int64 Source # 
Instance details

Defined in Basement.Cast

Methods

cast :: Word64 -> Int64 Source #

Cast Word64 Int Source # 
Instance details

Defined in Basement.Cast

Methods

cast :: Word64 -> Int Source #

Cast Word64 Word Source # 
Instance details

Defined in Basement.Cast

Methods

cast :: Word64 -> Word Source #

Cast Word8 Int8 Source # 
Instance details

Defined in Basement.Cast

Methods

cast :: Word8 -> Int8 Source #

Cast Int Int64 Source # 
Instance details

Defined in Basement.Cast

Methods

cast :: Int -> Int64 Source #

Cast Int Word64 Source # 
Instance details

Defined in Basement.Cast

Methods

cast :: Int -> Word64 Source #

Cast Int Word Source # 
Instance details

Defined in Basement.Cast

Methods

cast :: Int -> Word Source #

Cast Word Int64 Source # 
Instance details

Defined in Basement.Cast

Methods

cast :: Word -> Int64 Source #

Cast Word Word64 Source # 
Instance details

Defined in Basement.Cast

Methods

cast :: Word -> Word64 Source #

Cast Word Int Source # 
Instance details

Defined in Basement.Cast

Methods

cast :: Word -> Int Source #

Cast (Block a) (Block Word8) Source # 
Instance details

Defined in Basement.Cast

Methods

cast :: Block a -> Block Word8 Source #