-
Christian Hergert authored
Previously, the IdeCodeIndexEntries API required generating content on the main thread (or rather, accessing it synchronously with a generator-like API). This instead creates an async API to get the next chunk of items with a default implementation to call that sync API on the main thread. The Vala and Clang indexers have been ported to the Async API to batch all the results in a single call. This allows less work to be done on the main thread (other than building the index GVariant content files). A new IdeCodeIndexerEntryBuilder API has been created to create entry instances. This also allowed us to make IdeCodeIndexerEntry not an object anymore, but a boxed type. This should be a little bit faster by avoiding all those property creations.
c46b603d