From 7362fdb061655b3b202e65ae1abe67adc959ddae Mon Sep 17 00:00:00 2001 From: simonmar Date: Tue, 2 Jul 2002 10:31:35 +0000 Subject: [PATCH] [project @ 2002-07-02 10:31:35 by simonmar] Documentation for system --- System/Cmd.hs | 29 +++++++++++++++++++---------- 1 file changed, 19 insertions(+), 10 deletions(-) diff --git a/System/Cmd.hs b/System/Cmd.hs index 0be8008..4bd07af 100644 --- a/System/Cmd.hs +++ b/System/Cmd.hs @@ -8,7 +8,7 @@ -- Stability : provisional -- Portability : portable -- --- Executing a command. +-- Executing an external command. -- ----------------------------------------------------------------------------- @@ -28,17 +28,26 @@ import GHC.IOBase -- --------------------------------------------------------------------------- -- system --- Computation `system cmd' returns the exit code --- produced when the operating system processes the command `cmd'. +{-| +Computation @system cmd@ returns the exit code +produced when the operating system processes the command @cmd@. --- This computation may fail with --- PermissionDenied --- The process has insufficient privileges to perform the operation. --- ResourceExhausted --- Insufficient resources are available to perform the operation. --- UnsupportedOperation --- The implementation does not support system calls. +This computation may fail with + * @PermissionDenied@: The process has insufficient privileges to + perform the operation. + + * @ResourceExhausted@: Insufficient resources are available to + perform the operation. + + * @UnsupportedOperation@: The implementation does not support + system calls. + +On Windows, 'system' is implemented using Windows's native system +call, which ignores the @SHELL@ environment variable, and always +passes the command to the Windows command interpreter (@CMD.EXE@ or +@COMMAND.COM@), hence Unixy shell tricks will not work. +-} system :: String -> IO ExitCode system "" = ioException (IOError Nothing InvalidArgument "system" "null command" Nothing) system cmd = -- 1.7.10.4