| `withSignature` relies on the string representation of internal classes in the |
| javac implementation. Those string representations are not necessarily stable |
| across versions of javac, and they can change when a method is annotated with |
| type-use annotations. |
| |
| Additionally, `withSignature` currently has at least one undocumented behavioral |
| quirk. |
| |
| The most reasonable use case for `withSignature` is for methods that declare or |
| use type variables, which are difficult or impossible to express with the rest |
| of the `MethodMatchers` API. Still, where practical, prefer to write your own |
| matching code instead of using `withSignature`. |