In C++17 several classes, types, and functions from the <functional> header are no longer available.
In this change we add first clang-tidy checks for occurrences of
- std::unary_function
- std::binary_function
- std::ptr_fun
- std::mem_fun
As there are several more deprecated types in <functional>, this check will be extended in the future.
You can drop the ast_matchers:: here because of the using declaration above.
Actually, do we need the isClass() and isStruct() check at all? What else would match isDerivedFrom()?