module Clang.Source
(
FFI.File
,getFilename
,getFileTime
,FFI.SourceLocation
,nullLocation
,getLocation
,getLocationForOffset
,FFI.SourceRange
,nullRange
,getRange
,getInstantiationLocation
,getSpellingLocation
,getStart
,getEnd
) where
import System.IO.Unsafe(unsafePerformIO)
import qualified Clang.FFI as FFI
getFilename = unsafePerformIO . FFI.getFileName
getFileTime = unsafePerformIO . FFI.getFileTime
nullLocation = unsafePerformIO FFI.getNullLocation
instance Eq FFI.SourceLocation where
a == b = unsafePerformIO (FFI.equalLocations a b)
getLocation tu f line col = unsafePerformIO (FFI.getLocation tu f line col)
getLocationForOffset tu f off = unsafePerformIO (FFI.getLocationForOffset tu f off)
nullRange = unsafePerformIO FFI.getNullRange
getRange from to = unsafePerformIO (FFI.getRange from to)
getInstantiationLocation = unsafePerformIO . FFI.getInstantiationLocation
getSpellingLocation = unsafePerformIO . FFI.getSpellingLocation
getStart = unsafePerformIO . FFI.getRangeStart
getEnd = unsafePerformIO . FFI.getRangeEnd