Reintroduce D153557 with fix for use-after-free from f4de606ef271 and minor changes. Reviewed By: dang Differential Revision: https://reviews.llvm.org/D157007
This reverts commit 8b76b44e46ac5b4efbf8cb3702f09d353af2a112.
Add ExtractAPI support C++ classes, fields, methods, and various qualifiers and specifiers Differential Revision: https://reviews.llvm.org/D153557