@@ -14,13 +14,16 @@ module sourcery_string_m
1414 generic :: string = > as_character
1515 procedure :: is_allocated
1616 procedure :: get_json_key
17- procedure , private :: &
18- get_json_integer_array, get_json_logical, get_json_integer, get_json_string, get_json_real
17+ generic :: operator ( /= ) = > string_t_ne_string_t, string_t_ne_character, character_ne_string_t
18+ generic :: operator (==) = > string_t_eq_string_t, string_t_eq_character, character_eq_string_t
1919 generic :: get_json_value = > &
2020 get_json_integer_array, get_json_logical, get_json_integer, get_json_string, get_json_real
21+ procedure , private :: &
22+ get_json_integer_array, get_json_logical, get_json_integer, get_json_string, get_json_real
23+ procedure , private :: string_t_ne_string_t, string_t_ne_character
24+ procedure , private , pass(rhs) :: character_ne_string_t
2125 procedure , private :: string_t_eq_string_t, string_t_eq_character
2226 procedure , private , pass(rhs) :: character_eq_string_t
23- generic :: operator (==) = > string_t_eq_string_t, string_t_eq_character, character_eq_string_t
2427 end type
2528
2629 interface string_t
@@ -113,6 +116,26 @@ elemental module function character_eq_string_t(lhs, rhs) result(lhs_eq_rhs)
113116 logical lhs_eq_rhs
114117 end function
115118
119+ elemental module function string_t_ne_string_t(lhs, rhs) result(lhs_ne_rhs)
120+ implicit none
121+ class(string_t), intent (in ) :: lhs, rhs
122+ logical lhs_ne_rhs
123+ end function
124+
125+ elemental module function string_t_ne_character(lhs, rhs) result(lhs_ne_rhs)
126+ implicit none
127+ class(string_t), intent (in ) :: lhs
128+ character (len=* ), intent (in ) :: rhs
129+ logical lhs_ne_rhs
130+ end function
131+
132+ elemental module function character_ne_string_t(lhs, rhs) result(lhs_ne_rhs)
133+ implicit none
134+ class(string_t), intent (in ) :: rhs
135+ character (len=* ), intent (in ) :: lhs
136+ logical lhs_ne_rhs
137+ end function
138+
116139 end interface
117140
118141end module sourcery_string_m
0 commit comments