llvm-extra-0.10.1: Utility functions for the llvm interface

Safe HaskellNone

LLVM.Extra.Tuple

Documentation

class Phi a whereSource

Instances

Phi () 
Phi a => Phi (Complex a) 
IsFirstClass a => Phi (Value a) 
Phi a => Phi (T a) 
Phi struct => Phi (T struct) 
Phi a => Phi (T a) 
C a => Phi (T a) 
(Phi a, Phi b) => Phi (a, b) 
(Natural n, Phi a) => Phi (T n a) 
(Phi a, Phi b) => Phi (T a b) 
Phi a => Phi (Constant n a) 
(Positive n, C a) => Phi (T n a) 
(Phi a, Phi b, Phi c) => Phi (a, b, c) 
(Phi a, Phi b, Phi c, Phi d) => Phi (a, b, c, d) 

class Undefined a whereSource

Methods

undef :: aSource

Instances

Undefined () 
Undefined a => Undefined (Complex a) 
IsFirstClass a => Undefined (ConstValue a) 
IsFirstClass a => Undefined (Value a) 
Undefined a => Undefined (T a) 
Undefined struct => Undefined (T struct) 
Undefined a => Undefined (T a) 
C a => Undefined (T a) 
(Undefined a, Undefined b) => Undefined (a, b) 
(Natural n, Undefined a) => Undefined (T n a) 
(Undefined a, Undefined b) => Undefined (T a b) 
Undefined a => Undefined (Constant n a) 
(Positive n, C a) => Undefined (T n a) 
(Undefined a, Undefined b, Undefined c) => Undefined (a, b, c) 
(Undefined a, Undefined b, Undefined c, Undefined d) => Undefined (a, b, c, d) 

class Zero a whereSource

Methods

zero :: aSource

Instances

Zero () 
Zero a => Zero (Complex a) 
IsFirstClass a => Zero (ConstValue a) 
IsFirstClass a => Zero (Value a) 
Zero struct => Zero (T struct) 
Zero a => Zero (T a) 
C a => Zero (T a) 
(Zero a, Zero b) => Zero (a, b) 
(Natural n, Zero a) => Zero (T n a) 
(Positive n, C a) => Zero (T n a) 
(Flags flags, Zero a, Tuple a) => Zero (Context flags a) 
(Zero a, Zero b, Zero c) => Zero (a, b, c) 
(Zero a, Zero b, Zero c, Zero d) => Zero (a, b, c, d) 

class Undefined (ValueOf a) => Value a whereSource

Associated Types

type ValueOf a Source

Methods

valueOf :: a -> ValueOf aSource

Instances

Value Bool 
Value Double 
Value Float 
Value Int 
Value Int8 
Value Int16 
Value Int32 
Value Int64 
Value Word 
Value Word8 
Value Word16 
Value Word32 
Value Word64 
Value () 
Value Bool8 
Value (StablePtr a) 
Value (Ptr a) 
IsFunction a => Value (FunPtr a) 
Value a => Value (Complex a) 
Value a => Value (Maybe a) 
Positive n => Value (IntN n) 
IsType a => Value (Ptr a) 
Positive n => Value (WordN n) 
Value tuple => Value (Tuple tuple) 
Value struct => Value (T struct) 
(Value a, Value b) => Value (Either a b) 
(Value a, Value b) => Value (a, b) 
(IsInteger w, IsConst w) => Value (T w i) 
(Positive n, VectorValue n a, Undefined (VectorValueOf n a)) => Value (Vector n a) 
(IsInteger w, IsConst w, Num w, Enum e) => Value (T w e) 
Value a => Value (Tagged tag a) 
Value a => Value (Number flags a) 
(Value a, Value b, Value c) => Value (a, b, c) 
(Value a, Value b, Value c, Value d) => Value (a, b, c, d) 

valueOfFunctor :: (Value h, Functor f) => f h -> f (ValueOf h)Source

class (Positive n, Undefined (VectorValueOf n a)) => VectorValue n a whereSource

Associated Types

type VectorValueOf n a Source

Methods

vectorValueOf :: Vector n a -> VectorValueOf n aSource