content: {-# LANGUAGE
    ForeignFunctionInterface,
    MultiParamTypeClasses
    #-}
  
  -- | <http://llvm.org/doxygen/classllvm_1_1BasicBlock.html>
  module LLVM.Internal.FFI.BasicBlock where
  
  import LLVM.Prelude
  
  import Foreign.Ptr
  
  import LLVM.Internal.FFI.PtrHierarchy
  
  -- | <http://llvm.org/doxygen/group__LLVMCCoreValueBasicBlock.html#gab57c996ff697ef40966432055ae47a4e>
  foreign import ccall unsafe "LLVMIsABasicBlock" isABasicBlock ::
      Ptr Value -> IO (Ptr BasicBlock)
  
  -- | <http://llvm.org/doxygen/group__LLVMCCoreValueBasicBlock.html#ga754e45f69f4b784b658d9e379943f354>
  foreign import ccall unsafe "LLVMGetBasicBlockTerminator" getBasicBlockTerminator ::
      Ptr BasicBlock -> IO (Ptr Instruction)
  
  -- | <http://llvm.org/doxygen/group__LLVMCCoreValueBasicBlock.html#ga9baf824cd325ad211027b23fce8a7494>
  foreign import ccall unsafe "LLVMGetFirstInstruction" getFirstInstruction ::
      Ptr BasicBlock -> IO (Ptr Instruction)
  
  -- | <http://llvm.org/doxygen/group__LLVMCCoreValueBasicBlock.html#gaa0bb2c95802d06bf94f4c55e61fc3477>
  foreign import ccall unsafe "LLVMGetLastInstruction" getLastInstruction ::
      Ptr BasicBlock -> IO (Ptr Instruction)
  
  -- | <http://llvm.org/doxygen/group__LLVMCCoreValueInstruction.html#ga1b4c3bd197e86e8bffdda247ddf8ec5e>
  foreign import ccall unsafe "LLVMGetNextInstruction" getNextInstruction ::
      Ptr Instruction -> IO (Ptr Instruction)
  
  