@@ -94,6 +94,7 @@ module stdlib_hashmaps
94
94
procedure , non_overridable, pass(map) :: map_probes
95
95
procedure , non_overridable, pass(map) :: num_slots
96
96
procedure , non_overridable, pass(map) :: slots_bits
97
+ procedure (get_all_keys), deferred, pass(map) :: get_all_keys
97
98
procedure (get_other), deferred, pass(map) :: get_other_data
98
99
procedure (init_map), deferred, pass(map) :: init
99
100
procedure (key_test), deferred, pass(map) :: key_test
@@ -109,6 +110,21 @@ module stdlib_hashmaps
109
110
110
111
abstract interface
111
112
113
+ subroutine get_all_keys (map , all_keys )
114
+ ! ! Version: Experimental
115
+ ! !
116
+ ! ! Returns the all keys presented in a hash map
117
+ ! ! ([Specifications](../page/specs/stdlib_hashmaps.html#get_all_keys-returns-all-the-keys-presented-in-a-map))
118
+ ! !
119
+ ! ! Arguments:
120
+ ! ! map - a hash map
121
+ ! ! all_keys - all the keys presented in a hash map
122
+ !
123
+ import hashmap_type, key_type
124
+ class(hashmap_type), intent (in ) :: map
125
+ type (key_type), allocatable , intent (out ) :: all_keys(:)
126
+ end subroutine get_all_keys
127
+
112
128
subroutine get_other ( map , key , other , exists )
113
129
! ! Version: Experimental
114
130
! !
0 commit comments