module HROOT.Core.TArrayL64.Implementation where
import FFICXX.Runtime.Cast
import HROOT.Core.TArrayL64.RawType
import HROOT.Core.TArrayL64.FFI
import HROOT.Core.TArrayL64.Interface
import HROOT.Core.TArrayL64.Cast
import HROOT.Core.TArray.RawType
import HROOT.Core.TArray.Cast
import HROOT.Core.TArray.Interface
import HROOT.Core.Deletable.RawType
import HROOT.Core.Deletable.Cast
import HROOT.Core.Deletable.Interface
import Data.Word
import Foreign.C
import Foreign.Ptr
import Foreign.ForeignPtr
import System.IO.Unsafe
instance ITArrayL64 TArrayL64 where
instance ITArray TArrayL64 where
instance IDeletable TArrayL64 where
delete = xform0 c_tarrayl64_delete
instance ITArrayL64 (Exist TArrayL64) where
instance ITArray (Exist TArrayL64) where
instance IDeletable (Exist TArrayL64) where
delete (ETArrayL64 x) = delete x
instance FPtr (Exist TArrayL64) where
type Raw (Exist TArrayL64) = RawTArrayL64
get_fptr (ETArrayL64 obj) = castForeignPtr (get_fptr obj)
cast_fptr_to_obj fptr = ETArrayL64 (cast_fptr_to_obj (fptr :: ForeignPtr RawTArrayL64) :: TArrayL64)