73#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
101#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
197 logical(
LK) :: ash
= .false._LK
198 logical(
LK) :: bash
= .false._LK
199 logical(
LK) :: cmd
= .false._LK
200 logical(
LK) :: csh
= .false._LK
201 logical(
LK) :: dash
= .false._LK
202 logical(
LK) :: fish
= .false._LK
203 logical(
LK) :: ksh
= .false._LK
204 logical(
LK) :: posix
= .false._LK
205 logical(
LK) :: powershell
= .false._LK
206 logical(
LK) :: sh
= .false._LK
211 logical(
LK) :: tcsh
= .false._LK
212 logical(
LK) :: windows
= .false._LK
213 logical(
LK) :: zsh
= .false._LK
214 logical(
LK) :: yash
= .false._LK
220 impure module function shellis_typer()
result(shellis)
221#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
222 !DEC$ ATTRIBUTES DLLEXPORT :: shellis_typer
227 impure module function shellis_typerFailed(failed)
result(shellis)
228#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
229 !DEC$ ATTRIBUTES DLLEXPORT :: shellis_typerFailed
232 logical(
LK) ,
intent(out) :: failed
236 impure module function shellis_typerFailedMsg(failed, errmsg)
result(shellis)
237#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
238 !DEC$ ATTRIBUTES DLLEXPORT :: shellis_typerFailedMsg
241 logical(
LK) ,
intent(out) :: failed
242 character(
*,SKG),
intent(inout) :: errmsg
323 character(
1, SK) :: dirsep
= SK_
"/"
324 character(
1, SK) :: pathsep
= SK_
":"
325 character(:, SK),
allocatable :: dirseps
326 character(:, SK),
allocatable :: name
334 impure module function shell_typer()
result(shell)
335#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
336 !DEC$ ATTRIBUTES DLLEXPORT :: shell_typer
341 impure module function shell_typerFailed(failed)
result(shell)
342#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
343 !DEC$ ATTRIBUTES DLLEXPORT :: shell_typerFailed
346 logical(
LK) ,
intent(out) :: failed
350 impure module function shell_typerFailedMsg(failed, errmsg)
result(shell)
351#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
352 !DEC$ ATTRIBUTES DLLEXPORT :: shell_typerFailedMsg
355 logical(
LK) ,
intent(out) :: failed
356 character(
*,SKG),
intent(inout) :: errmsg
429#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
433 character(
*,SKG),
intent(in) :: name
434 character(:,SKG),
intent(out) ,
allocatable :: value
435 integer(IK) ,
intent(in) ,
optional :: length
436 logical(LK) :: failed
439 impure module function isFailedGetEnvVarMsg(name, value, errmsg, length)
result(failed)
440#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
441 !DEC$ ATTRIBUTES DLLEXPORT :: isFailedGetEnvVarMsg
444 character(
*,SKG),
intent(in) :: name
445 character(:,SKG),
intent(out) ,
allocatable :: value
446 character(
*, SK),
intent(inout) :: errmsg
447 integer(IK) ,
intent(in) ,
optional :: length
448 logical(LK) :: failed
510#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
514 character(
*,SKG),
intent(in) :: name, value
515 logical(LK) :: failed
588 impure module function isFailedGetOutput(command, output, exitstat)
result(failed)
589#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
593 character(
*,SKG),
intent(in) :: command
594 character(:,SKG),
intent(out) ,
allocatable :: output
595 integer(IK) ,
intent(out) ,
optional :: exitstat
596 logical(LK) :: failed
599 impure module function isFailedGetOutputMsg(command, output, errmsg, exitstat)
result(failed)
600#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
601 !DEC$ ATTRIBUTES DLLEXPORT :: isFailedGetOutputMsg
604 character(
*,SKG),
intent(in) :: command
605 character(:,SKG),
intent(out) ,
allocatable :: output
606 character(
*, SK),
intent(inout) :: errmsg
607 integer(IK) ,
intent(out) ,
optional :: exitstat
608 logical(LK) :: failed
695#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
699 character(:,SKG),
intent(out) ,
allocatable :: dirTemp
700 logical(LK) :: failed
703 impure module function isFailedGetDirTempMsg(dirTemp, errmsg)
result(failed)
704#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
705 !DEC$ ATTRIBUTES DLLEXPORT :: isFailedGetDirTempMsg
708 character(:,SKG),
intent(out) ,
allocatable :: dirTemp
709 character(
*, SK),
intent(inout) :: errmsg
710 logical(LK) :: failed
775 impure module function isShellPosix()
result(shellIsPosix)
776#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
779 logical(LK) :: shellIsPosix
782 impure module function isShellPosixFailed(failed)
result(shellIsPosix)
783#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
784 !DEC$ ATTRIBUTES DLLEXPORT :: isShellPosixFailed
787 logical(LK) ,
intent(out) :: failed
788 logical(LK) :: shellIsPosix
791 impure module function isShellPosixFailedMsg(failed, errmsg)
result(shellIsPosix)
792#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
793 !DEC$ ATTRIBUTES DLLEXPORT :: isShellPosixFailedMsg
795 logical(LK) ,
intent(out) :: failed
796 character(
*, SK),
intent(inout) :: errmsg
797 logical(LK) :: shellIsPosix
860#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
863 logical(LK) :: shellIsWindows
866 impure module function isShellWindowsFailed(failed)
result(shellIsWindows)
867#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
868 !DEC$ ATTRIBUTES DLLEXPORT :: isShellWindowsFailed
871 logical(LK) ,
intent(out) :: failed
872 logical(LK) :: shellIsWindows
875 impure module function isShellWindowsFailedMsg(failed, errmsg)
result(shellIsWindows)
876#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
877 !DEC$ ATTRIBUTES DLLEXPORT :: isShellWindowsFailedMsg
879 logical(LK) ,
intent(out) :: failed
880 character(
*, SK),
intent(inout) :: errmsg
881 logical(LK) :: shellIsWindows
944 impure module function isShellCMD()
result(shellIsCMD)
945#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
948 logical(LK) :: shellIsCMD
951 impure module function isShellCMDFailed(failed)
result(shellIsCMD)
952#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
953 !DEC$ ATTRIBUTES DLLEXPORT :: isShellCMDFailed
956 logical(LK) ,
intent(out) :: failed
957 logical(LK) :: shellIsCMD
960 impure module function isShellCMDFailedMsg(failed, errmsg)
result(shellIsCMD)
961#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
962 !DEC$ ATTRIBUTES DLLEXPORT :: isShellCMDFailedMsg
964 logical(LK) ,
intent(out) :: failed
965 character(
*, SK),
intent(inout) :: errmsg
966 logical(LK) :: shellIsCMD
1030#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1033 logical(LK) :: shellIsPowerShell
1036 impure module function isShellPowerShellFailed(failed)
result(shellIsPowerShell)
1037#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1038 !DEC$ ATTRIBUTES DLLEXPORT :: isShellPowerShellFailed
1041 logical(LK) ,
intent(out) :: failed
1042 logical(LK) :: shellIsPowerShell
1045 impure module function isShellPowerShellFailedMsg(failed, errmsg)
result(shellIsPowerShell)
1046#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1047 !DEC$ ATTRIBUTES DLLEXPORT :: isShellPowerShellFailedMsg
1049 logical(LK) ,
intent(out) :: failed
1050 character(
*, SK),
intent(inout) :: errmsg
1051 logical(LK) :: shellIsPowerShell
1142 impure elemental module function isFailedExec(command, wait, exitstat, cmdstat, cmdmsg)
result(failed)
1143#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1147 character(
*,SKG),
intent(in) :: command
1148 logical(LK) ,
intent(in) ,
optional :: wait
1149 integer(IK) ,
intent(inout) ,
optional :: exitstat
1150 integer(IK) ,
intent(out) ,
optional :: cmdstat
1151 character(
*, SK),
intent(inout) ,
optional :: cmdmsg
1152 logical(LK) :: failed
1217#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1221 integer(IK) ,
intent(out) :: width
1222 integer(IK) ,
intent(out) :: height
1223 logical(LK) :: failed
1285#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1289 integer(IK) ,
intent(out) :: width
1290 logical(LK) :: failed
1352#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1356 integer(IK) ,
intent(out) :: height
1357 logical(LK) :: failed
Generate and return failed = .false. if the attempt to run the requested shell command is successful....
Generate and return failed = .false. if the path to the shell-specified temporary directory is succes...
Generate and return failed = .false. if the value of the input environment variable name can be succe...
Generate and return failed = .false. if the output of the input system command is successfully retrie...
Generate and return failed = .false. if the attempt to fetch the height (in characters) of the curren...
Generate and return failed = .false. if the attempt to fetch the shape (height and width) of the curr...
Generate and return failed = .false. if the attempt to fetch the width (in characters) of the current...
Generate and return .true. if the attempt to (re)define the environment variable name with the specif...
Generate and return .true. if the runtime system shell is Windows CMD.
Generate and return .true. if the runtime system shell is POSIX-compliant regardless of the Operating...
Generate and return .true. if the runtime system shell is Microsoft PowerShell Core (on Unix systems)...
Generate and return .true. if the runtime system shell is Windows-based (e.g., CMD,...
This module defines the relevant Fortran kind type-parameters frequently used in the ParaMonte librar...
integer, parameter RK
The default real kind in the ParaMonte library: real64 in Fortran, c_double in C-Fortran Interoperati...
integer, parameter LK
The default logical kind in the ParaMonte library: kind(.true.) in Fortran, kind(....
integer, parameter CK
The default complex kind in the ParaMonte library: real64 in Fortran, c_double_complex in C-Fortran I...
integer, parameter IK
The default integer kind in the ParaMonte library: int32 in Fortran, c_int32_t in C-Fortran Interoper...
integer, parameter SK
The default character kind in the ParaMonte library: kind("a") in Fortran, c_char in C-Fortran Intero...
This module contains procedures and generic interfaces for inferring the runtime system shell type an...
character(4, SK), dimension(*), parameter VARENV_DIRTEMP_WINDOWS
The constant vector of scalars of type character of default kind SK, containing the Windows shell env...
character(7, SK), dimension(*), parameter VARENV_DIRTEMP_UNIX
The constant vector of scalars of type character of default kind SK, containing the Unix shell enviro...
character(*, SK), parameter MODULE_NAME
This is the shell_type class for generating objects to determine the runtime shell type of the operat...
This is the shellis_type class for generating objects with logical components to determine the runtim...