Given a java source code file, what is a fast and reliable way to find out if it implements a given interface?
A reliable way would be to parse the file into a syntax tr
I would say that parsing a source code file is both, fast and reliable. But "fast" is such a vague notion that it really depends, I guess. I wouldn't expect too much overhead when compared to scanning the source file for occurrences of the words "implements", though -- thus if the latter is fine for you, I'd assume the former should be acceptable too?
The javax.tools.* API would be a good entrance point to get started; however, there are also a number of (open source) source code parsers for Java out there.
Also, here is an introductory blog post on Oracle's websites.