Plan 9 from Bell Labs’s /usr/web/sources/contrib/fernan/nhc98/src/prelude/IO/HGetPosn.hs

Copyright © 2021 Plan 9 Foundation.
Distributed under the MIT License.
Download the Plan 9 distribution.


module IO (hGetPosn) where

import DHandle
import DHandlePosn
import NHC.FFI

foreign import ccall hGetPosnC :: Handle -> IO (Ptr ())

hGetPosn              :: Handle -> IO HandlePosn
hGetPosn h = do
    p <- hGetPosnC h
    if p==nullPtr then do
        errno <- getErrNo
        throwIOError "hGetPosn" Nothing (Just h) errno
      else do
        f <- newForeignPtr finalizerFree p	-- (free p)  -- nullFunPtr
        return (HandlePosn h f)


Bell Labs OSI certified Powered by Plan 9

(Return to Plan 9 Home Page)

Copyright © 2021 Plan 9 Foundation. All Rights Reserved.
Comments to webmaster@9p.io.