@@ -85,6 +85,9 @@ typedef _Nullable indexstoredb_indexstore_library_t(^indexstore_library_provider
85
85
/// Returns true to continue.
86
86
typedef bool (^indexstoredb_symbol_occurrence_receiver_t )(_Nonnull indexstoredb_symbol_occurrence_t );
87
87
88
+ /// Returns true to continue.
89
+ typedef bool (^indexstoredb_symbol_name_receiver )(const char * _Nonnull);
90
+
88
91
INDEXSTOREDB_PUBLIC _Nullable
89
92
indexstoredb_index_t
90
93
indexstoredb_index_create (const char * _Nonnull storePath ,
@@ -159,6 +162,45 @@ indexstoredb_error_get_description(_Nonnull indexstoredb_error_t);
159
162
INDEXSTOREDB_PUBLIC void
160
163
indexstoredb_error_dispose (_Nullable indexstoredb_error_t );
161
164
165
+ /// Loops through each symbol in the index and calls the receiver function with each symbol.
166
+ /// @param index An IndexStoreDB object which contains the symbols.
167
+ /// @param receiver A function to be called for each symbol, the CString of the symbol will be passed in to this function.
168
+ /// The function should return a boolean indicating whether the looping should continue.
169
+ INDEXSTOREDB_PUBLIC bool
170
+ indexstoredb_index_symbol_names (_Nonnull indexstoredb_index_t index , _Nonnull indexstoredb_symbol_name_receiver );
171
+
172
+ /// Loops through each canonical symbol that matches the string and performs the passed in function.
173
+ /// @param index An IndexStoreDB object which contains the symbols.
174
+ /// @param symbolName The name of the symbol whose canonical occurence should be found.
175
+ /// @param receiver A function to be called for each canonical occurence.
176
+ /// The SymbolOccurenceRef of the symbol will be passed in to this function.
177
+ /// The function should return a boolean indicating whether the looping should continue.
178
+ INDEXSTOREDB_PUBLIC bool
179
+ indexstoredb_index_canonical_symbol_occurences_by_name (
180
+ indexstoredb_index_t _Nonnull index ,
181
+ const char * _Nonnull symbolName ,
182
+ indexstoredb_symbol_occurrence_receiver_t _Nonnull receiver
183
+ );
184
+
185
+ /// Loops through each canonical symbol that matches the pattern and performs the passed in function.
186
+ /// @param index An IndexStoreDB object which contains the symbols.
187
+ /// @param anchorStart When true, symbol names should only be considered matching when the first characters of the symbol name match the pattern.
188
+ /// @param anchorEnd When true, symbol names should only be considered matching when the first characters of the symbol name match the pattern.
189
+ /// @param subsequence When true, symbols will be matched even if the pattern is not matched contiguously.
190
+ /// @param ignoreCase When true, symbols may be returned even if the case of letters does not match the pattern.
191
+ /// @param receiver A function to be called for each canonical occurence that matches the pattern.
192
+ /// The SymbolOccurenceRef of the symbol will be passed in to this function.
193
+ /// The function should return a boolean indicating whether the looping should continue.
194
+ INDEXSTOREDB_PUBLIC bool
195
+ indexstoredb_index_canonical_symbol_occurences_containing_pattern (
196
+ _Nonnull indexstoredb_index_t index ,
197
+ const char * _Nonnull pattern ,
198
+ bool anchorStart ,
199
+ bool anchorEnd ,
200
+ bool subsequence ,
201
+ bool ignoreCase ,
202
+ _Nonnull indexstoredb_symbol_occurrence_receiver_t receiver );
203
+
162
204
INDEXSTOREDB_END_DECLS
163
205
164
206
#endif
0 commit comments