Copyright | 2019 Emily Pillmore |
---|---|
License | BSD |
Maintainer | Emily Pillmore <emilypi@cohomolo.gy> |
Stability | Experimental |
Portability | TypeFamilies, Rank2Types |
Safe Haskell | Safe |
Language | Haskell2010 |
Just the (classy) optics
Synopsis
- _ShellCommand :: Traversal' CmdSpec String
- _RawCommand :: Traversal' CmdSpec (FilePath, [String])
- _Inherit :: Traversal' StdStream StdStream
- _UseHandle :: Traversal' StdStream Handle
- _CreatePipe :: Traversal' StdStream StdStream
- _NoStream :: Traversal' StdStream StdStream
- arguments :: Traversal' CmdSpec [String]
- _Handler :: Lens' ProcessHandler (Maybe Handle, Maybe Handle, Maybe Handle, ProcessHandle)
- cmdspec_ :: Lens' CreateProcess CmdSpec
- cwd_ :: Lens' CreateProcess (Maybe FilePath)
- env_ :: Lens' CreateProcess (Maybe [(String, String)])
- stdin_ :: Lens' CreateProcess StdStream
- stdout_ :: Lens' CreateProcess StdStream
- stderr_ :: Lens' CreateProcess StdStream
- closefds :: Lens' CreateProcess Bool
- creategroup :: Lens' CreateProcess Bool
- delegatectlc :: Lens' CreateProcess Bool
- newsession :: Lens' CreateProcess Bool
- detachconsole :: Lens' CreateProcess Bool
- createnewconsole :: Lens' CreateProcess Bool
- childgroup :: Lens' CreateProcess (Maybe CGid)
- childuser :: Lens' CreateProcess (Maybe CUid)
- useprocessjobs :: Lens' CreateProcess Bool
- hstdin :: Lens' ProcessHandler (Maybe Handle)
- hstdout :: Lens' ProcessHandler (Maybe Handle)
- hstderr :: Lens' ProcessHandler (Maybe Handle)
- hhandle :: Lens' ProcessHandler ProcessHandle
- class IsRaw a where
- _Raw :: Traversal' a (FilePath, [String])
- class IsShell a where
- _Shell :: Traversal' a String
- class IsInherit a where
- _Inherits :: Traversal' a StdStream
- class IsUseHandle a where
- _UsesHandle :: Traversal' a Handle
- class IsCreatePipe a where
- class IsNoStream a where
- class HasStdin a where
- class HasStdout a where
- class HasStderr a where
Traversals
_ShellCommand :: Traversal' CmdSpec String Source #
A Traversal'
into the ShellCommand
case of a CmdSpec
Examples:
>>>
ShellCommand "ls -l" ^? _ShellCommand
Just "ls -l"
>>>
RawCommand "/bin/ls" ["-l"] ^? _ShellCommand
Nothing
_RawCommand :: Traversal' CmdSpec (FilePath, [String]) Source #
A Traversal'
into the RawCommand
case of a CmdSpec
Examples:
>>>
RawCommand "/bin/ls" ["-l"] ^? _RawCommand
Just ("/bin/ls",["-l"])
>>>
RawCommand "/bin/ls" ["-l"] ^? _ShellCommand
Nothing
>>>
RawCommand "/bin/ls" ["-l"] ^. _RawCommand . _1
"/bin/ls"
>>>
RawCommand "/bin/ls" ["-l"] ^. _RawCommand . _2
["-l"]
_Inherit :: Traversal' StdStream StdStream Source #
A Traversal'
into the Inherit
structure of a StdStream
_UseHandle :: Traversal' StdStream Handle Source #
A Traversal'
into the UseHandle
structure's Handle for a StdStream
_CreatePipe :: Traversal' StdStream StdStream Source #
A Traversal'
into the CreatePipe
structure of a StdStream
_NoStream :: Traversal' StdStream StdStream Source #
A Traversal'
into the NoStream
structure of a StdStream
arguments :: Traversal' CmdSpec [String] Source #
Traversal'
into the arguments of a command
Examples:
>>>
RawCommand "/bin/ls" ["-l"] ^. arguments
["-l"]
Lenses
_Handler :: Lens' ProcessHandler (Maybe Handle, Maybe Handle, Maybe Handle, ProcessHandle) Source #
An isomorphism between a ProcessHandler
and its tuple representation
cmdspec_ :: Lens' CreateProcess CmdSpec Source #
Lens into the cmdspec
entry of the CreateProcess
record
cwd_ :: Lens' CreateProcess (Maybe FilePath) Source #
Lens into the cwd
entry of the CreateProcess
record
env_ :: Lens' CreateProcess (Maybe [(String, String)]) Source #
Lens into the env
entry of the CreateProcess
record
stdin_ :: Lens' CreateProcess StdStream Source #
Lens into the std_in
entry of the CreateProcess
record
stdout_ :: Lens' CreateProcess StdStream Source #
Lens into the std_out
entry of the CreateProcess
record
stderr_ :: Lens' CreateProcess StdStream Source #
Lens into the std_err
entry of the CreateProcess
record
closefds :: Lens' CreateProcess Bool Source #
Lens into the close_fds
entry of the CreateProcess
record
creategroup :: Lens' CreateProcess Bool Source #
Lens into the create_group
entry of the CreateProcess
record
delegatectlc :: Lens' CreateProcess Bool Source #
Lens into the delegate_ctlc
entry of the CreateProcess
record
newsession :: Lens' CreateProcess Bool Source #
Lens into the new_session
entry of the CreateProcess
record
detachconsole :: Lens' CreateProcess Bool Source #
Lens into the detach_console
entry of the CreateProcess
record
createnewconsole :: Lens' CreateProcess Bool Source #
Lens into the create_new_console
entry of the CreateProcess
record
childgroup :: Lens' CreateProcess (Maybe CGid) Source #
Lens into the child_group
entry of the CreateProcess
record
childuser :: Lens' CreateProcess (Maybe CUid) Source #
Lens into the child_user
entry of the CreateProcess
record
useprocessjobs :: Lens' CreateProcess Bool Source #
Lens into the use_process_jobs
entry of the CreateProcess
record
hhandle :: Lens' ProcessHandler ProcessHandle Source #
A lens into the process handle
Classy Prisms
Classy Traversal'
into the raw command of a CmdSpec
class IsShell a where Source #
Classy Traversal'
into the shell command of a CmdSpec
_Shell :: Traversal' a String Source #
class IsInherit a where Source #
Class constraint proving a type has a prism into an Inherit
structure. Any StdStream
will have a prism into Inherit
-
it is just an overwrite to Inherit
_Inherits :: Traversal' a StdStream Source #
class IsUseHandle a where Source #
_UsesHandle :: Traversal' a Handle Source #
Instances
IsUseHandle StdStream Source # | |
Defined in System.Process.Microlens.StdStream |
class IsCreatePipe a where Source #
Class constraint proving a type has a prism into a Handle
via
a UseHandle
structure. Any StdStream
will have a prism into
CreatePipe
- it is just an overwrite to CreatePipe
Instances
IsCreatePipe StdStream Source # | |
class IsNoStream a where Source #
Class constraint proving a type has a prism into a Handle
via
a UseHandle
structure. Any StdStream
will have a prism into
NoStream
- it is just an overwrite to NoStream
.
_NoStreams :: Traversal' a StdStream Source #
Instances
IsNoStream StdStream Source # | |
Defined in System.Process.Microlens.StdStream |