Make naming of pointers a bit more consistent
1 files changed, 28 insertions(+), 26 deletions(-)

M src/Pdftotext/Internal.hs
M src/Pdftotext/Internal.hs +28 -26
@@ 66,7 66,9 @@ data Page = Page
     pageNumber :: Int,
     -- | Total number of pages in original document.
     pageOutOf :: Int,
-    pageDocument :: ForeignPtr Poppler_Document,
+    -- | Pointer to document which created this page.
+    pageDocumentPtr :: ForeignPtr Poppler_Document,
+    -- | Pointer to this page.
     pagePtr :: ForeignPtr Poppler_Page
   }
 

          
@@ 91,46 93,46 @@ data Layout
 openFile :: FilePath -> IO (Maybe Document)
 openFile file =
   withCString file \cfile -> do
-    docptr <- ffiOpenPdf cfile
-    if docptr == nullPtr
+    ptr <- ffiOpenPdf cfile
+    if ptr == nullPtr
       then return Nothing
-      else Just . Document <$> newForeignPtr ffiDocumentDelete docptr
+      else Just . Document <$> newForeignPtr ffiDocumentDelete ptr
 
 -- | Open PDF represented as bytestring. If document cannot be parsed as valid PDF,
 -- `Nothing` is returned.
 openByteStringIO :: ByteString -> IO (Maybe Document)
-openByteStringIO (PS ptr _ len) =
-  withForeignPtr ptr \d -> do
-    docptr <- ffiOpenData d (fromIntegral len)
+openByteStringIO (PS bsfptr _ len) =
+  withForeignPtr bsfptr \bsptr -> do
+    docptr <- ffiOpenData bsptr (fromIntegral len)
     if docptr == nullPtr
       then return Nothing
       else Just . Document <$> newForeignPtr ffiDocumentDelete docptr
 
 -- | Return all pages from document.
 pagesIO :: Document -> IO [Page]
-pagesIO (Document doc) = do
-  withForeignPtr doc \docptr -> do
-    pageno <- ffiDocumentPages docptr
+pagesIO (Document fptr) = do
+  withForeignPtr fptr \ptr -> do
+    pageno <- ffiDocumentPages ptr
     forM [0 .. pageno - 1] \pno -> do
-      p <- ffiDocumentOpenPage docptr pno >>= newForeignPtr ffiPageDelete
-      return $ Page (fromIntegral pno + 1) (fromIntegral pageno) doc p
+      p <- ffiDocumentOpenPage ptr pno >>= newForeignPtr ffiPageDelete
+      return $ Page (fromIntegral pno + 1) (fromIntegral pageno) fptr p
 
 -- | Return page number 'no' from PDF document, if the page exists.
 pageIO :: Int -> Document -> IO (Maybe Page)
-pageIO no d@(Document docptr) = withForeignPtr docptr \ptr -> do
-  pno <- pagesTotalIO d
+pageIO no doc@(Document fptr) = withForeignPtr fptr \ptr -> do
+  pno <- pagesTotalIO doc
   if no > 0 && no <= pno
-    then Just . Page no pno docptr <$> (ffiDocumentOpenPage ptr (fromIntegral no - 1) >>= newForeignPtr ffiPageDelete)
+    then Just . Page no pno fptr <$> (ffiDocumentOpenPage ptr (fromIntegral no - 1) >>= newForeignPtr ffiPageDelete)
     else return Nothing
 
 -- | Return number of pages contained in document.
 pagesTotalIO :: Document -> IO Int
-pagesTotalIO (Document doc) =
-  fromIntegral <$> withForeignPtr doc ffiDocumentPages
+pagesTotalIO (Document fptr) =
+  fromIntegral <$> withForeignPtr fptr ffiDocumentPages
 
 -- | Extract text from a page with given 'Layout'.
 pageTextIO :: Layout -> Page -> IO T.Text
-pageTextIO layout (Page _ _ _ ptr) = withForeignPtr ptr \p -> asText (ffiPageText p l)
+pageTextIO layout (Page _ _ _ fptr) = withForeignPtr fptr \ptr -> asText (ffiPageText ptr l)
   where
     l =
       case layout of

          
@@ 142,14 144,14 @@ pageTextIO layout (Page _ _ _ ptr) = wit
 --
 -- @since 0.0.2.0
 propertiesIO :: Document -> IO Properties
-propertiesIO (Document docptr) = withForeignPtr docptr \doc -> do
-  a <- asText $ ffiDocumentAuthor doc
-  c <- asText $ ffiDocumentCreator doc
-  k <- asText $ ffiDocumentKeywords doc
-  m <- asText $ ffiDocumentMetadata doc
-  p <- asText $ ffiDocumentProducer doc
-  s <- asText $ ffiDocumentSubject doc
-  t <- asText $ ffiDocumentTitle doc
+propertiesIO (Document fptr) = withForeignPtr fptr \ptr -> do
+  a <- asText $ ffiDocumentAuthor ptr
+  c <- asText $ ffiDocumentCreator ptr
+  k <- asText $ ffiDocumentKeywords ptr
+  m <- asText $ ffiDocumentMetadata ptr
+  p <- asText $ ffiDocumentProducer ptr
+  s <- asText $ ffiDocumentSubject ptr
+  t <- asText $ ffiDocumentTitle ptr
   return $ Properties (f a) (f c) (f k) (f m) (f p) (f s) (f t)
   where
     f x =