I am implementing a feature to automatically generate a bookmark name by extracting information from the current context. Many packages provide such info. For example which-func (through (which-function)) and semantic/find (through (semantic-current-tag)).
How do I detect availability/support of which-func or semantic/find for the current buffer?
Is this exposed by the mode writer through modes so from (eq major-mode DESIRED-FEATURE-mode) and DESIRED-FEATURE-minor-mode variable?