我想打開僞tty,並使用生成的從終端連接到子進程上的stdin/stdout。 openPseudoTerminal
給了我一個IO (System.Posix.Types.Fd, System.Posix.Types.Fd)
,我試圖翻譯成一對使用fdToHandle
GHC.IO.Handle.Fd
(特定於GHC,但我找不到另一個這樣的功能)的句柄。但是,我得到以下內容:將FD轉換爲句柄
liftA (fdToHandle *** fdToHandle) openPseudoTerminal
Couldn't match type `System.Posix.Types.Fd'
with `System.Posix.Internals.FD'
任何想法如何將這兩個(大概相似)的東西之間進行轉換?
對於獎勵積分,這會給我一個IO (IO Handle, IO Handle)
- 有沒有一種簡潔的方式將其轉換爲IO (Handle, Handle)
?
現在我只是覺得愚蠢。謝謝! – Impredicative
這兩種類型都是'Num'和'Integral'的實例,因此您可以使用'fromIntegral'來回轉換。 – raymonad