ParaMonte Fortran 2.0.0
Parallel Monte Carlo and Machine Learning Library
See the latest version documentation.
pm_sysShell.F90
Go to the documentation of this file.
1!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
2!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
3!!!! !!!!
4!!!! ParaMonte: Parallel Monte Carlo and Machine Learning Library. !!!!
5!!!! !!!!
6!!!! Copyright (C) 2012-present, The Computational Data Science Lab !!!!
7!!!! !!!!
8!!!! This file is part of the ParaMonte library. !!!!
9!!!! !!!!
10!!!! LICENSE !!!!
11!!!! !!!!
12!!!! https://github.com/cdslaborg/paramonte/blob/main/LICENSE.md !!!!
13!!!! !!!!
14!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
15!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
16
35
36!%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
37
39
40 use pm_kind, only: IK, LK, RK, CK, SK
41
42 implicit none
43
44 character(*, SK), parameter :: MODULE_NAME = SK_"@pm_sysShell"
45
46!%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
47
72 character(4, SK), parameter :: VARENV_DIRTEMP_WINDOWS(*) = [character(4, SK) :: "TEMP", "TMP"]
73#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
74 !DIR$ ATTRIBUTES DLLEXPORT :: VARENV_DIRTEMP_WINDOWS
75#endif
76
100 character(7, SK), parameter :: VARENV_DIRTEMP_UNIX(*) = [character(7, SK) :: "TMPDIR", "TMP", "TEMP", "TEMPDIR"]
101#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
102 !DIR$ ATTRIBUTES DLLEXPORT :: VARENV_DIRTEMP_UNIX
103#endif
104
105!%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
106
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
215 end type
216
218 interface shellis_type
219
220 impure module function shellis_typer() result(shellis)
221#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
222 !DEC$ ATTRIBUTES DLLEXPORT :: shellis_typer
223#endif
224 type(shellis_type) :: shellis
225 end function
226
227 impure module function shellis_typerFailed(failed) result(shellis)
228#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
229 !DEC$ ATTRIBUTES DLLEXPORT :: shellis_typerFailed
230#endif
231 use pm_kind, only: SKG => SK
232 logical(LK) , intent(out) :: failed
233 type(shellis_type) :: shellis
234 end function
235
236 impure module function shellis_typerFailedMsg(failed, errmsg) result(shellis)
237#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
238 !DEC$ ATTRIBUTES DLLEXPORT :: shellis_typerFailedMsg
239#endif
240 use pm_kind, only: SKG => SK
241 logical(LK) , intent(out) :: failed
242 character(*,SKG), intent(inout) :: errmsg
243 type(shellis_type) :: shellis
244 end function
245
246 end interface
248
249!%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
250
322 type(shellis_type) :: is
323 character(1, SK) :: dirsep = SK_"/"
324 character(1, SK) :: pathsep = SK_":"
325 character(:, SK), allocatable :: dirseps
326 character(:, SK), allocatable :: name
327 end type
328
329 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
330
332 interface shell_type
333
334 impure module function shell_typer() result(shell)
335#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
336 !DEC$ ATTRIBUTES DLLEXPORT :: shell_typer
337#endif
338 type(shell_type) :: shell
339 end function
340
341 impure module function shell_typerFailed(failed) result(shell)
342#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
343 !DEC$ ATTRIBUTES DLLEXPORT :: shell_typerFailed
344#endif
345 use pm_kind, only: SKG => SK
346 logical(LK) , intent(out) :: failed
347 type(shell_type) :: shell
348 end function
349
350 impure module function shell_typerFailedMsg(failed, errmsg) result(shell)
351#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
352 !DEC$ ATTRIBUTES DLLEXPORT :: shell_typerFailedMsg
353#endif
354 use pm_kind, only: SKG => SK
355 logical(LK) , intent(out) :: failed
356 character(*,SKG), intent(inout) :: errmsg
357 type(shell_type) :: shell
358 end function
359
360 end interface
362
363!%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
364
427
428 impure module function isFailedGetEnvVar(name, value, length) result(failed)
429#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
430 !DEC$ ATTRIBUTES DLLEXPORT :: isFailedGetEnvVar
431#endif
432 use pm_kind, only: SKG => SK
433 character(*,SKG), intent(in) :: name
434 character(:,SKG), intent(out) , allocatable :: value
435 integer(IK) , intent(in) , optional :: length
436 logical(LK) :: failed
437 end function
438
439 impure module function isFailedGetEnvVarMsg(name, value, errmsg, length) result(failed)
440#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
441 !DEC$ ATTRIBUTES DLLEXPORT :: isFailedGetEnvVarMsg
442#endif
443 use pm_kind, only: SKG => SK
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
449 end function
450
451 end interface
452
453!%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
454
506
507 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
508
509 impure module function isFailedPutEnvVar(name, value) result(failed)
510#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
511 !DEC$ ATTRIBUTES DLLEXPORT :: isFailedPutEnvVar
512#endif
513 use pm_kind, only: SKG => SK
514 character(*,SKG), intent(in) :: name, value
515 logical(LK) :: failed
516 end function
517
518 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
519
520 end interface
521
522!%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
523
587
588 impure module function isFailedGetOutput(command, output, exitstat) result(failed)
589#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
590 !DEC$ ATTRIBUTES DLLEXPORT :: isFailedGetOutput
591#endif
592 use pm_kind, only: SKG => SK
593 character(*,SKG), intent(in) :: command
594 character(:,SKG), intent(out) , allocatable :: output
595 integer(IK) , intent(out) , optional :: exitstat
596 logical(LK) :: failed
597 end function
598
599 impure module function isFailedGetOutputMsg(command, output, errmsg, exitstat) result(failed)
600#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
601 !DEC$ ATTRIBUTES DLLEXPORT :: isFailedGetOutputMsg
602#endif
603 use pm_kind, only: SKG => SK
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
609 end function
610
611 end interface
612
613!%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
614
691
692 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
693
694 impure module function isFailedGetDirTemp(dirTemp) result(failed)
695#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
696 !DEC$ ATTRIBUTES DLLEXPORT :: isFailedGetDirTemp
697#endif
698 use pm_kind, only: SKG => SK
699 character(:,SKG), intent(out) , allocatable :: dirTemp
700 logical(LK) :: failed
701 end function
702
703 impure module function isFailedGetDirTempMsg(dirTemp, errmsg) result(failed)
704#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
705 !DEC$ ATTRIBUTES DLLEXPORT :: isFailedGetDirTempMsg
706#endif
707 use pm_kind, only: SKG => SK
708 character(:,SKG), intent(out) , allocatable :: dirTemp
709 character(*, SK), intent(inout) :: errmsg
710 logical(LK) :: failed
711 end function
712
713 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
714
715 end interface
716
717!%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
718
773 interface isShellPosix
774
775 impure module function isShellPosix() result(shellIsPosix)
776#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
777 !DEC$ ATTRIBUTES DLLEXPORT :: isShellPosix
778#endif
779 logical(LK) :: shellIsPosix
780 end function
781
782 impure module function isShellPosixFailed(failed) result(shellIsPosix)
783#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
784 !DEC$ ATTRIBUTES DLLEXPORT :: isShellPosixFailed
785#endif
786 use pm_kind, only: SKG => SK
787 logical(LK) , intent(out) :: failed
788 logical(LK) :: shellIsPosix
789 end function
790
791 impure module function isShellPosixFailedMsg(failed, errmsg) result(shellIsPosix)
792#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
793 !DEC$ ATTRIBUTES DLLEXPORT :: isShellPosixFailedMsg
794#endif
795 logical(LK) , intent(out) :: failed
796 character(*, SK), intent(inout) :: errmsg
797 logical(LK) :: shellIsPosix
798 end function
799
800 end interface
801
802!%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
803
858
859 impure module function isShellWindows() result(shellIsWindows)
860#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
861 !DEC$ ATTRIBUTES DLLEXPORT :: isShellWindows
862#endif
863 logical(LK) :: shellIsWindows
864 end function
865
866 impure module function isShellWindowsFailed(failed) result(shellIsWindows)
867#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
868 !DEC$ ATTRIBUTES DLLEXPORT :: isShellWindowsFailed
869#endif
870 use pm_kind, only: SKG => SK
871 logical(LK) , intent(out) :: failed
872 logical(LK) :: shellIsWindows
873 end function
874
875 impure module function isShellWindowsFailedMsg(failed, errmsg) result(shellIsWindows)
876#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
877 !DEC$ ATTRIBUTES DLLEXPORT :: isShellWindowsFailedMsg
878#endif
879 logical(LK) , intent(out) :: failed
880 character(*, SK), intent(inout) :: errmsg
881 logical(LK) :: shellIsWindows
882 end function
883
884 end interface
885
886!%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
887
942 interface isShellCMD
943
944 impure module function isShellCMD() result(shellIsCMD)
945#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
946 !DEC$ ATTRIBUTES DLLEXPORT :: isShellCMD
947#endif
948 logical(LK) :: shellIsCMD
949 end function
950
951 impure module function isShellCMDFailed(failed) result(shellIsCMD)
952#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
953 !DEC$ ATTRIBUTES DLLEXPORT :: isShellCMDFailed
954#endif
955 use pm_kind, only: SKG => SK
956 logical(LK) , intent(out) :: failed
957 logical(LK) :: shellIsCMD
958 end function
959
960 impure module function isShellCMDFailedMsg(failed, errmsg) result(shellIsCMD)
961#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
962 !DEC$ ATTRIBUTES DLLEXPORT :: isShellCMDFailedMsg
963#endif
964 logical(LK) , intent(out) :: failed
965 character(*, SK), intent(inout) :: errmsg
966 logical(LK) :: shellIsCMD
967 end function
968
969 end interface
970
971!%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
972
1028
1029 impure module function isShellPowerShell() result(shellIsPowerShell)
1030#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1031 !DEC$ ATTRIBUTES DLLEXPORT :: isShellPowerShell
1032#endif
1033 logical(LK) :: shellIsPowerShell
1034 end function
1035
1036 impure module function isShellPowerShellFailed(failed) result(shellIsPowerShell)
1037#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1038 !DEC$ ATTRIBUTES DLLEXPORT :: isShellPowerShellFailed
1039#endif
1040 use pm_kind, only: SKG => SK
1041 logical(LK) , intent(out) :: failed
1042 logical(LK) :: shellIsPowerShell
1043 end function
1044
1045 impure module function isShellPowerShellFailedMsg(failed, errmsg) result(shellIsPowerShell)
1046#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1047 !DEC$ ATTRIBUTES DLLEXPORT :: isShellPowerShellFailedMsg
1048#endif
1049 logical(LK) , intent(out) :: failed
1050 character(*, SK), intent(inout) :: errmsg
1051 logical(LK) :: shellIsPowerShell
1052 end function
1053
1054 end interface
1055
1056!%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1057
1142 impure elemental module function isFailedExec(command, wait, exitstat, cmdstat, cmdmsg) result(failed)
1143#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1144 !DEC$ ATTRIBUTES DLLEXPORT :: isFailedExec
1145#endif
1146 use pm_kind, only: SKG => SK
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
1153 end function
1154 end interface
1155
1156!%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1157
1216 impure module function isFailedGetShellShape(width, height) result(failed)
1217#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1218 !DEC$ ATTRIBUTES DLLEXPORT :: isFailedGetShellShape
1219#endif
1220 use pm_kind, only: IKG => IK
1221 integer(IK) , intent(out) :: width
1222 integer(IK) , intent(out) :: height
1223 logical(LK) :: failed
1224 end function
1225 end interface
1226
1227!%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1228
1284 impure module function isFailedGetShellWidth(width) result(failed)
1285#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1286 !DEC$ ATTRIBUTES DLLEXPORT :: isFailedGetShellWidth
1287#endif
1288 use pm_kind, only: IKG => IK
1289 integer(IK) , intent(out) :: width
1290 logical(LK) :: failed
1291 end function
1292 end interface
1293
1294!%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1295
1351 impure module function isFailedGetShellHeight(height) result(failed)
1352#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1353 !DEC$ ATTRIBUTES DLLEXPORT :: isFailedGetShellHeight
1354#endif
1355 use pm_kind, only: IKG => IK
1356 integer(IK) , intent(out) :: height
1357 logical(LK) :: failed
1358 end function
1359 end interface
1360
1361!%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1362
1363end module pm_sysShell ! LCOV_EXCL_LINE
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...
Definition: pm_kind.F90:268
integer, parameter RK
The default real kind in the ParaMonte library: real64 in Fortran, c_double in C-Fortran Interoperati...
Definition: pm_kind.F90:543
integer, parameter LK
The default logical kind in the ParaMonte library: kind(.true.) in Fortran, kind(....
Definition: pm_kind.F90:541
integer, parameter CK
The default complex kind in the ParaMonte library: real64 in Fortran, c_double_complex in C-Fortran I...
Definition: pm_kind.F90:542
integer, parameter IK
The default integer kind in the ParaMonte library: int32 in Fortran, c_int32_t in C-Fortran Interoper...
Definition: pm_kind.F90:540
integer, parameter SK
The default character kind in the ParaMonte library: kind("a") in Fortran, c_char in C-Fortran Intero...
Definition: pm_kind.F90:539
This module contains procedures and generic interfaces for inferring the runtime system shell type an...
Definition: pm_sysShell.F90:38
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...
Definition: pm_sysShell.F90:72
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
Definition: pm_sysShell.F90:44
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...