String -> IO ()
Write a string to the standard output device (same as hPutStr stdout).
The same as putStr, but adds a newline character.
putTraceMsg function outputs the trace message from IO monad. Usually the output stream is System.IO.stderr but if the function is called from Windows GUI application then the output will be directed to the Windows debug console.
putEnv function takes an argument of the form name=value and is equivalent to setEnv(key,value,True{-overwrite-}).
Delete the semaphore with the given name.
Delete the shared memory object with the given name.
The unsetEnv function deletes all instances of the variable name from the environment.
Unconditionally signals that a failure has occured. All other assertions can be expressed with the form:
> if conditionIsMet
> then IO ()
> else assertFailure msg
Signals an assertion failure if a non-empty message (i.e., a message other than "") is passed.
changeWorkingDirectory dir calls chdir to change the current working directory to dir.
createDirectory dir creates a new directory dir which is initially empty, or as near to empty as the operating system allows.
The operation may fail with:
* isPermissionError / PermissionDenied The process has insufficient privileges to perform the operation. [EROFS, EACCES]
* isAlreadyExistsError / AlreadyExists The operand refers to a directory that already exists. [EEXIST]
* HardwareFault A physical I/O error has occurred. [EIO]
* InvalidArgument The operand is not a valid directory name. [ENAMETOOLONG, ELOOP]
* NoSuchThing There is no path to the directory. [ENOENT, ENOTDIR]
* ResourceExhausted Insufficient resources (virtual memory, process file descriptors, physical disk space, etc.) are available to perform the operation. [EDQUOT, ENOSPC, ENOMEM, EMLINK]
* InappropriateType The path refers to an existing non-directory object. [EEXIST]
removeDirectory dir removes an existing directory dir. The implementation may specify additional constraints which must be satisfied before a directory can be removed (e.g. the directory has to be empty, or may not be in use by other processes). It is not legal for an implementation to partially remove a directory unless the entire directory is removed. A conformant implementation need not support directory removal in all situations (e.g. removal of the root directory).
The operation may fail with:
* HardwareFault A physical I/O error has occurred. EIO
* InvalidArgument The operand is not a valid directory name. [ENAMETOOLONG, ELOOP]
* isDoesNotExistError / NoSuchThing The directory does not exist. [ENOENT, ENOTDIR]
* isPermissionError / PermissionDenied The process has insufficient privileges to perform the operation. [EROFS, EACCES, EPERM]
* UnsatisfiedConstraints Implementation-dependent constraints are not satisfied. [EBUSY, ENOTEMPTY, EEXIST]
* UnsupportedOperation The implementation does not support removal in this situation. [EINVAL]
* InappropriateType The operand refers to an existing non-directory object. [ENOTDIR]
removeDirectoryRecursive dir removes an existing directory dir together with its content and all subdirectories. Be careful, if the directory contains symlinks, the function will follow them.
removeFile file removes the directory entry for an existing file file, directory. The implementation may specify additional constraints which must be satisfied before a file can be removed (e.g. the file may not be in use by other processes).
The operation may fail with:
* HardwareFault A physical I/O error has occurred. [EIO]
* InvalidArgument The operand is not a valid file name. [ENAMETOOLONG, ELOOP]
* isDoesNotExistError / NoSuchThing The file does not exist. [ENOENT, ENOTDIR]
* isPermissionError / PermissionDenied The process has insufficient privileges to perform the operation. [EROFS, EACCES, EPERM]
* UnsatisfiedConstraints Implementation-dependent constraints are not satisfied. [EBUSY]
* InappropriateType The operand refers to an existing directory. [EPERM, EINVAL]
removeLink path removes the link named path.
Note: calls unlink.
If the operating system has a notion of current directories, setCurrentDirectory dir changes the current directory of the calling process to dir.
The operation may fail with:
* HardwareFault A physical I/O error has occurred. [EIO]
* InvalidArgument The operand is not a valid directory name. [ENAMETOOLONG, ELOOP]
* isDoesNotExistError / NoSuchThing The directory does not exist. [ENOENT, ENOTDIR]
* isPermissionError / PermissionDenied The process has insufficient privileges to perform the operation. [EACCES]
* UnsupportedOperation The operating system has no notion of current directory, or the current directory cannot be dynamically changed.
* InappropriateType The path refers to an existing non-directory object. [ENOTDIR]
Note that in a concurrent program, the current directory is global state shared between all threads of the process. When using filesystem operations from multiple threads, it is therefore highly recommended to use absolute rather than relative FilePaths.
touchFile path sets the access and modification times associated with file path to the current time.
Note: calls utime.
Show more results