Commit
d1acf3416859944367cb66c50b7c254695b831fb
by marcus.denkerPragmaCollector has just one way to create itself: by filtering all Pragmas.
This is not a good idea, as this means that it always has to iterate over all Pragmas. For large systems, this is slow however you do it
(iterate all methods or iterate all pragmas of the cache and check if the methods are still installed)
For one, PragmaCollector is often not needed. But existing clients that rely on announcements of added / removed pragmas can benefit from a simple change: When creating PragmaCollector, we can
pre-set which Pragma selectors we are interested in.
This PR implements creating PragmaCollector with #selectors: and changes both PragmaMenuBuilder and KMKeymapBuilder to use this new scheme.