Fix fo 92628 (Definitions missing in new Search Engine)
Got rid of FWD_CLASS, FWD_STRUCT and FWD_UNION encodings (updated all 3 indexers)
Updated Indexer View (got rid of FWD declarations)
- external functions return empty function type instead of null
- optimizations for indexing
- fix bug regarding function body scopes being marked as fully cached prematurely
This enables more information to be stored during indexing (modifiers, function sigantures,...). Also should address definition/declaration issues raised by Devin.
This patch gets rid of the work around added to CoreModel with the last patch. It was required in order to get C(PP)SelectionTests*Indexer working but the better way to do this is to create a scanner config for the projects for those tests.
This patch also improves the speeds of CSelectionTestsCTagsIndexer and CPPSelectionTestsCTagsIndexer by adding CTagsIndexer#notifyListeners(IndexDelta) to Index.java.
Note to specifically look at the changes made to CoreModel.java as this is the fix for 96865.
The rest of the patch consists of tests and the changes to CTagsIndexer.java to make it compatible with those tests.
Updated for 77383 changes:
FIXED 96865- [DOM Indexer] won't run on new Standard Make C Project
includes JUnits for AutomatedSuite to test Open Definition/Open Declaration against the DOM Indexer and the CTags Indexer
added 29 tests for the above and raised the following bugs on those tests: 96689, 96690, 96694
- For include files and source files that are not compiled per file discovered scanner info defaults to project's discovered scanner info.
- A new method is added to CoreModel to determine if per resource scanner info is empty. This method will take into account effective per file discovered scanner info.
- Fix for resolving header file name for #include "..." preprocessor statements.
- Fix for updating Discovered scanner info container when discovered scanner info changes.
CTagFileReader logic change to read in all tags in ctags file
Patch from Dave with fix for TempVA merge problem (Indexer View was opening BlocksInput without close) + other UI improvements
Renamed generated CTags file
Refactored indexer tests to not depend on EntryResult toString()
- Replaced indexer problem markers property page block for DOMIndexer.
(from SourceIndexerBlock to NullIndexerBlock).
Only inclusion not found preprocessor problem markers are going to be
generated (there isn't an option in UI to disable/enable them yet).
- Also, fixed deleting of indexer problem markers when indexer is changed.
Fix for PR 92060: [DOM Indexer] for C projects only seems to do macros now. Taken a different approach by wrapping calls to IIndexerOutput in anticipation of its soon change.
Changed CTags execution to pass just the arguments in the Launch array.
Modified creation of CTags file to work on all platforms.
Cleaned up CTags block UI.
Fixed IndexerTests to take into account new toString() representation of IEntryResults.