module Numeric.LAPACK.FFI.Enumeration where import Foreign.C.Types (CChar) import Foreign.C.String (castCharToCChar) ($$) :: (CChar -> a) -> Char -> a cons $$ c = cons $ castCharToCChar c newtype Transposed = Transposed CChar transposed, nonTransposed :: Transposed transposed = Transposed $$ 'T' nonTransposed = Transposed $$ 'N' newtype UpperLower = UpperLower CChar upper, lower :: UpperLower upper = UpperLower $$ 'U' lower = UpperLower $$ 'L' newtype Side = Side CChar left, right, bothSides :: Side left = Side $$ 'L' right = Side $$ 'R' bothSides = Side $$ 'B' newtype Diagonal = Diagonal CChar unitDiagonal, nonUnitDiagonal :: Diagonal unitDiagonal = Diagonal $$ 'U' nonUnitDiagonal = Diagonal $$ 'N'