Safe Haskell | Safe-Inferred |
---|---|
Language | Haskell2010 |
A module providing a backend that launches solvers as external processes.
Documentation
defaultConfig :: Config Source #
By default, use Z3 as an external process and ignores log messages.
close :: Handle -> IO () Source #
Cleanup the process' resources, terminate it and wait for it to actually exit.
:: Config | The solver process' configuration. |
-> (Handle -> IO a) | The computation to run with the solver process |
-> IO a |
Create a solver process, use it to make a computation and close it.
Inherit | Inherit Handle from parent |
UseHandle Handle | Use the supplied Handle |
CreatePipe | Create a new pipe. The returned
|
NoStream | Close the stream's file descriptor without
passing a Handle. On POSIX systems this may
lead to strange behavior in the child process
because attempting to read or write after the
file has been closed throws an error. This
should only be used with child processes that
don't use the file descriptor at all. If you
wish to ignore the child process's output you
should either create a pipe and drain it
manually or pass a |