35 use,
intrinsic :: iso_c_binding
40 kim_log_verbosity_type, &
41 kim_log_verbosity_from_string, &
48 kim_log_verbosity_string, &
60 type, bind(c) :: kim_log_verbosity_type
61 integer(c_int) :: log_verbosity_id
62 end type kim_log_verbosity_type
64 type(kim_log_verbosity_type),
protected, &
65 bind(c, name=
"KIM_LOG_VERBOSITY_silent") &
67 type(kim_log_verbosity_type),
protected, &
68 bind(c, name=
"KIM_LOG_VERBOSITY_fatal") &
70 type(kim_log_verbosity_type),
protected, &
71 bind(c, name=
"KIM_LOG_VERBOSITY_error") &
73 type(kim_log_verbosity_type),
protected, &
74 bind(c, name=
"KIM_LOG_VERBOSITY_warning") &
76 type(kim_log_verbosity_type),
protected, &
77 bind(c, name=
"KIM_LOG_VERBOSITY_information") &
79 type(kim_log_verbosity_type),
protected, &
80 bind(c, name=
"KIM_LOG_VERBOSITY_debug") &
83 interface operator (.lt.)
84 logical function kim_log_verbosity_less_than(left, right)
85 use,
intrinsic :: iso_c_binding
86 import kim_log_verbosity_type
88 type(kim_log_verbosity_type),
intent(in) :: left
89 type(kim_log_verbosity_type),
intent(in) :: right
90 end function kim_log_verbosity_less_than
91 end interface operator (.lt.)
93 interface operator (.gt.)
94 logical function kim_log_verbosity_greater_than(left, right)
95 use,
intrinsic :: iso_c_binding
96 import kim_log_verbosity_type
98 type(kim_log_verbosity_type),
intent(in) :: left
99 type(kim_log_verbosity_type),
intent(in) :: right
100 end function kim_log_verbosity_greater_than
101 end interface operator (.gt.)
103 interface operator (.le.)
104 logical function kim_log_verbosity_less_than_equal(left, right)
105 use,
intrinsic :: iso_c_binding
106 import kim_log_verbosity_type
108 type(kim_log_verbosity_type),
intent(in) :: left
109 type(kim_log_verbosity_type),
intent(in) :: right
110 end function kim_log_verbosity_less_than_equal
111 end interface operator (.le.)
113 interface operator (.ge.)
114 logical function kim_log_verbosity_greater_than_equal(left, right)
115 use,
intrinsic :: iso_c_binding
116 import kim_log_verbosity_type
118 type(kim_log_verbosity_type),
intent(in) :: left
119 type(kim_log_verbosity_type),
intent(in) :: right
120 end function kim_log_verbosity_greater_than_equal
121 end interface operator (.ge.)
123 interface operator (.eq.)
124 logical function kim_log_verbosity_equal(left, right)
125 use,
intrinsic :: iso_c_binding
126 import kim_log_verbosity_type
128 type(kim_log_verbosity_type),
intent(in) :: left
129 type(kim_log_verbosity_type),
intent(in) :: right
130 end function kim_log_verbosity_equal
131 end interface operator (.eq.)
133 interface operator (.ne.)
134 logical function kim_log_verbosity_not_equal(left, right)
135 use,
intrinsic :: iso_c_binding
136 import kim_log_verbosity_type
138 type(kim_log_verbosity_type),
intent(in) :: left
139 type(kim_log_verbosity_type),
intent(in) :: right
140 end function kim_log_verbosity_not_equal
141 end interface operator (.ne.)
144 subroutine kim_log_verbosity_from_string(string, log_verbosity)
145 import kim_log_verbosity_type
147 character(len=*),
intent(in) :: string
148 type(kim_log_verbosity_type),
intent(out) :: log_verbosity
149 end subroutine kim_log_verbosity_from_string
151 subroutine kim_log_verbosity_string(log_verbosity, string)
152 import kim_log_verbosity_type
154 type(kim_log_verbosity_type),
intent(in),
value :: log_verbosity
155 character(len=*),
intent(out) :: string
156 end subroutine kim_log_verbosity_string
type(kim_log_verbosity_type), public, protected kim_log_verbosity_information
character(len=4096), public kim_log_file
character(len=65536), public kim_log_message
type(kim_log_verbosity_type), public, protected kim_log_verbosity_debug
type(kim_log_verbosity_type), public, protected kim_log_verbosity_warning
type(kim_log_verbosity_type), public, protected kim_log_verbosity_error
type(kim_log_verbosity_type), public, protected kim_log_verbosity_silent
type(kim_log_verbosity_type), public, protected kim_log_verbosity_fatal