Safe Haskell | Safe-Inferred |
---|

Versions of the functions in module `Read`

specialized for type ByteString.

- class (Integral (LengthType a), ListLikeIO a c) => ListLikePlus a c where
- type LengthType a
- binary :: a -> [Handle] -> IO ()
- lazy :: a -> Bool
- length' :: a -> LengthType a

- readCreateProcessWithExitCode :: forall a c. ListLikePlus a c => CreateProcess -> a -> IO (ExitCode, a, a)
- readCreateProcess :: ListLikePlus a c => CreateProcess -> a -> IO a
- readProcessWithExitCode :: ListLikePlus a c => FilePath -> [String] -> a -> IO (ExitCode, a, a)
- readProcess :: ListLikePlus a c => FilePath -> [String] -> a -> IO a

# Documentation

class (Integral (LengthType a), ListLikeIO a c) => ListLikePlus a c whereSource

Class of types which can be used as the input and outputs of the process functions.

type LengthType a Source

binary :: a -> [Handle] -> IO ()Source

This should call `hSetBinaryMode`

on each handle if a is a
ByteString type, so that it doesn't attempt to decode the text
using the current locale.

length' :: a -> LengthType aSource

readCreateProcessWithExitCodeSource

:: forall a c . ListLikePlus a c | |

=> CreateProcess | process to run |

-> a | standard input |

-> IO (ExitCode, a, a) | exitcode, stdout, stderr, exception |

A polymorphic implementation of
`readProcessWithExitCode`

with a few
generalizations:

- The input and outputs can be any instance of
`ListLikePlus`

. - Allows you to modify the
`CreateProcess`

record before the process starts - Takes a
`CmdSpec`

, so you can launch either a`RawCommand`

or a`ShellCommand`

.

:: ListLikePlus a c | |

=> CreateProcess | process to run |

-> a | standard input |

-> IO a | stdout |

A polymorphic implementation of `readProcess`

with a few generalizations:

- The input and outputs can be any instance of
`ListLikePlus`

. - Allows you to modify the
`CreateProcess`

record before the process starts - Takes a
`CmdSpec`

, so you can launch either a`RawCommand`

or a`ShellCommand`

.

:: ListLikePlus a c | |

=> FilePath | command to run |

-> [String] | any arguments |

-> a | standard input |

-> IO (ExitCode, a, a) | exitcode, stdout, stderr |

A polymorphic implementation of
`readProcessWithExitCode`

in terms of
`readCreateProcessWithExitCode`

.

:: ListLikePlus a c | |

=> FilePath | command to run |

-> [String] | any arguments |

-> a | standard input |

-> IO a | stdout |

Implementation of `readProcess`

in terms of
`readCreateProcess`

.