llvm-hs-6.0.0: General purpose LLVM bindings

Safe HaskellSafe
LanguageHaskell98

LLVM.Internal.FFI.PtrHierarchy

Description

This module defines typeclasses to represent the relationships of an object-oriented inheritance hierarchy

Synopsis

Documentation

class DescendentOf a b where Source #

a class to represent safe casting of pointers to objects of descendant-classes to ancestor-classes.

Methods

upCast :: Ptr b -> Ptr a Source #

Instances

(DescendentOf a b, ChildOf b c) => DescendentOf a c Source #

ancestor-descentant relationships are build out of parent-child relationships

Methods

upCast :: Ptr c -> Ptr a Source #

DescendentOf a a Source #

trivial casts

Methods

upCast :: Ptr a -> Ptr a Source #