1 module Mate.ClassHierarchy
5 import qualified Data.ByteString.Lazy as B
6 import Control.Applicative
9 import Mate.NativeSizes
15 { clMtable :: NativeWord
16 , clSuperClass :: Class
17 , clInterfaces :: [Interface]
20 { clMtable :: NativeWord
25 { ifSuperInterfaces :: [Interface]
28 isInstanceOf :: NativeWord -> B.ByteString -> IO Bool
29 isInstanceOf obj_mtable classname = do
30 (== obj_mtable) <$> getMethodTable classname