Closed Arogbonlo closed 1 month ago
Hey @Arogbonlo,
Thanks for the PR. There are a few issues here that need addressed:
pipe
allow for all possible subtypes (<
) not to have at least the variants it describes (>
).I think perhaps you should start again updating the types in lib_eio/process.{ml.mli}
and following this through to eio_unix
. I think you are also going to need to update the Pipe
effect in lib_eio/unix/private.ml
too. No other parts of the types should be changed (e.g. you changed _ mgr
to 'a t
)
I'll effect them immediately. Thank you. @patricoferris
Hey @Arogbonlo how's it going? Do you need any help?
Hey @Arogbonlo how's it going? Do you need any help?
Thank you so much for the check!
I'll push my progress in a few hours, so you can check it and let me know where i have to make changes.
Hey @patricoferris
I just made a commit, please I'll appreciate your feedback on it.
Thank you.
This updates the
pipe
function in theMake_mgr
module to use polymorphic variants for its return types. The change allows the returned source and sink to be compatible with APIs expecting monomorphic types. Change:pipe
function signature inMake_mgr
[...]
to[>...]
for both source and sink typesThis addresses issue #750, improving flexibility when working with various APIs that use stricter type definitions for sources and sinks.