Code completion is handled by ReSharper, as long as the reference also implements the
ICompleteableReference interface. This interface inherits from
IReference and defines just one method:
This method should return a symbol table of candidates. Each candidate will be added to the code completion list. The implementation for this is usually very straightforward:
We simply return the symbol table from
IReference.GetReferenceSymbolTable by passing
useReferenceName. This is already our list of candidates, so we don't need to do any further processing.