Skip to content

Proposal: Generalize maybeNew

This is a tiny proposal to generalize Foreign.Marshal.Utils.maybeNew from:

maybeNew :: (      a -> IO (Ptr a))
         -> (Maybe a -> IO (Ptr a))

to:

maybeNew :: (      a -> IO (Ptr b))
         -> (Maybe a -> IO (Ptr b))

so that it becomes consistent with maybeWith:

maybeWith :: (      a -> (Ptr b -> IO c) -> IO c)
          -> (Maybe a -> (Ptr b -> IO c) -> IO c)

The thread on the libraries list didn't get any replies so I guess there's a consensus.

Trac metadata
Trac field Value
Version 7.0.2
Type Task
TypeOfFailure OtherFailure
Priority normal
Resolution Unresolved
Component libraries/base
Test case
Differential revisions
BlockedBy
Related
Blocking
CC
Operating system
Architecture
To upload designs, you'll need to enable LFS and have an admin enable hashed storage. More information