clang  3.7.0
Public Member Functions | Friends | List of all members
clang::CallEventManager Class Reference

Manages the lifetime of CallEvent objects. More...

#include <CallEvent.h>

Public Member Functions

 CallEventManager (llvm::BumpPtrAllocator &alloc)
 
CallEventRef getCaller (const StackFrameContext *CalleeCtx, ProgramStateRef State)
 
CallEventRef getSimpleCall (const CallExpr *E, ProgramStateRef State, const LocationContext *LCtx)
 
CallEventRef< ObjCMethodCallgetObjCMethodCall (const ObjCMessageExpr *E, ProgramStateRef State, const LocationContext *LCtx)
 
CallEventRef< CXXConstructorCallgetCXXConstructorCall (const CXXConstructExpr *E, const MemRegion *Target, ProgramStateRef State, const LocationContext *LCtx)
 
CallEventRef< CXXDestructorCallgetCXXDestructorCall (const CXXDestructorDecl *DD, const Stmt *Trigger, const MemRegion *Target, bool IsBase, ProgramStateRef State, const LocationContext *LCtx)
 
CallEventRef< CXXAllocatorCallgetCXXAllocatorCall (const CXXNewExpr *E, ProgramStateRef State, const LocationContext *LCtx)
 

Friends

class CallEvent
 

Detailed Description

Manages the lifetime of CallEvent objects.

CallEventManager provides a way to create arbitrary CallEvents "on the stack" as if they were value objects by keeping a cache of CallEvent-sized memory blocks. The CallEvents created by CallEventManager are only valid for the lifetime of the OwnedCallEvent that holds them; right now these objects cannot be copied and ownership cannot be transferred.

Definition at line 897 of file CallEvent.h.

Constructor & Destructor Documentation

clang::CallEventManager::CallEventManager ( llvm::BumpPtrAllocator &  alloc)
inline

Definition at line 948 of file CallEvent.h.

Member Function Documentation

CallEventRef CallEventManager::getCaller ( const StackFrameContext CalleeCtx,
ProgramStateRef  State 
)
CallEventRef<CXXAllocatorCall> clang::CallEventManager::getCXXAllocatorCall ( const CXXNewExpr E,
ProgramStateRef  State,
const LocationContext LCtx 
)
inline

Definition at line 979 of file CallEvent.h.

References State.

Referenced by clang::ento::ExprEngine::VisitCXXNewExpr().

CallEventRef<CXXConstructorCall> clang::CallEventManager::getCXXConstructorCall ( const CXXConstructExpr E,
const MemRegion *  Target,
ProgramStateRef  State,
const LocationContext LCtx 
)
inline

Definition at line 966 of file CallEvent.h.

References State.

Referenced by clang::ento::ExprEngine::VisitCXXConstructExpr().

CallEventRef<CXXDestructorCall> clang::CallEventManager::getCXXDestructorCall ( const CXXDestructorDecl DD,
const Stmt Trigger,
const MemRegion *  Target,
bool  IsBase,
ProgramStateRef  State,
const LocationContext LCtx 
)
inline

Definition at line 972 of file CallEvent.h.

References State.

Referenced by clang::ento::ExprEngine::VisitCXXDestructor().

CallEventRef<ObjCMethodCall> clang::CallEventManager::getObjCMethodCall ( const ObjCMessageExpr E,
ProgramStateRef  State,
const LocationContext LCtx 
)
inline

Definition at line 960 of file CallEvent.h.

References State.

Referenced by clang::ento::ExprEngine::VisitObjCMessage().

CallEventRef CallEventManager::getSimpleCall ( const CallExpr E,
ProgramStateRef  State,
const LocationContext LCtx 
)

Friends And Related Function Documentation

friend class CallEvent
friend

Definition at line 898 of file CallEvent.h.


The documentation for this class was generated from the following files: