An annotation applied by Clang/TESLA to a structure field access.
Definition at line 80 of file Annotations.h.
#include "Annotations.h"
Public Member Functions | |
virtual AnnotationKind | getKind () const |
llvm::StringRef | getStructName () const |
llvm::StringRef | getFieldName () const |
std::string | completeFieldName () const |
llvm::Value::use_iterator | begin () |
llvm::Value::use_iterator | end () |
FieldAnnotation (llvm::CallInst *Call, const llvm::Value *PtrArg, llvm::StringRef StructName, llvm::StringRef FieldName, llvm::StringRef Filename, llvm::APInt &Line) | |
![]() | |
virtual | ~PtrAnnotation () |
llvm::StringRef | getName () const |
const llvm::Value * | getValue () const |
Static Public Member Functions | |
static bool | classof (const PtrAnnotation *P) |
![]() | |
static bool | classof (const PtrAnnotation *P) |
static PtrAnnotation * | Interpret (llvm::User *) |
Additional Inherited Members | |
![]() | |
enum | AnnotationKind { AK_RawAnnotation, AK_FieldAnnotation } |
![]() | |
PtrAnnotation (llvm::CallInst *Call, const llvm::Value *PtrArg, llvm::StringRef Name, llvm::StringRef Filename, llvm::APInt &Line) | |
![]() | |
static llvm::StringRef | ExtractStringConstant (const llvm::Value *V) |
![]() | |
llvm::CallInst * | Call |
const llvm::Value * | PtrArg |
const llvm::StringRef | Name |
const llvm::StringRef | Filename |
const llvm::APInt & | Line |
|
inline |
Definition at line 94 of file Annotations.h.
|
inline |
|
inlinestatic |
Definition at line 83 of file Annotations.h.
References tesla::PtrAnnotation::AK_FieldAnnotation, and tesla::PtrAnnotation::getKind().
string tesla::FieldAnnotation::completeFieldName | ( | ) | const |
Definition at line 77 of file Annotations.cpp.
References strnlen.
Referenced by tesla::FieldReferenceInstrumenter::runOnModule().
|
inline |
|
inline |
Definition at line 88 of file Annotations.h.
|
inlinevirtual |
Reimplemented from tesla::PtrAnnotation.
Definition at line 82 of file Annotations.h.
References tesla::PtrAnnotation::AK_FieldAnnotation.
|
inline |
Definition at line 87 of file Annotations.h.