Rework plugin support
OpenPublic

Description

We have two flavors of plugin for the C++ indexer (IndexerLibrarySupport and MetadataSupport). These have different lifetimes and are registered in different ways. We should normalize this.

zarko created this task.Via WebJan 6 2017, 10:22 AM
zarko claimed this task.
zarko added a project: C++.
zarko added a subscriber: zarko.
zarko added a comment.Via WebJan 26 2017, 2:21 PM

Requirement: plugins should have a chance to initialize *after* a CU is typechecked. This is so they can check to see whether they apply to the CU in question; for example, the text proto plugin should only enable itself if it can find proto2::contrib::parse_proto::internal::ParseProtoHelper.

zarko added a comment.Via WebJan 26 2017, 5:16 PM

(Note that some plugins might also be interested in preprocessor events, which must be captured before typechecking.)

Add Comment