class CodeInjector
Declaration
class CodeInjector { /* full declaration omitted */ };
Description
CodeInjector is an interface which is responsible for injecting AST of function definitions that may not be available in the original source. The getBody function will be called each time the static analyzer examines a function call that has no definition available in the current translation unit. If the returned statement is not a null pointer, it is assumed to be the body of a function which will be used for the analysis. The source of the body can be arbitrary, but it is advised to use memoization to avoid unnecessary reparsing of the external source that provides the body of the functions.
Declared at: clang/include/clang/Analysis/CodeInjector.h:35
Method Overview
- public CodeInjector()
- public virtual clang::Stmt * getBody(const clang::FunctionDecl * D)
- public virtual clang::Stmt * getBody(const clang::ObjCMethodDecl * D)
- public virtual ~CodeInjector()
Methods
¶CodeInjector()
CodeInjector()
Declared at: clang/include/clang/Analysis/CodeInjector.h:37
¶virtual clang::Stmt* getBody(
const clang::FunctionDecl* D)
virtual clang::Stmt* getBody(
const clang::FunctionDecl* D)
Declared at: clang/include/clang/Analysis/CodeInjector.h:40
Parameters
- const clang::FunctionDecl* D
¶virtual clang::Stmt* getBody(
const clang::ObjCMethodDecl* D)
virtual clang::Stmt* getBody(
const clang::ObjCMethodDecl* D)
Declared at: clang/include/clang/Analysis/CodeInjector.h:41
Parameters
- const clang::ObjCMethodDecl* D
¶virtual ~CodeInjector()
virtual ~CodeInjector()
Declared at: clang/include/clang/Analysis/CodeInjector.h:38