clang API Documentation

Public Member Functions | Public Attributes
clang::threadSafety::SExprBuilder::CallingContext Struct Reference

Encapsulates the lexical context of a function call. The lexical context includes the arguments to the call, including the implicit object argument. When an attribute containing a mutex expression is attached to a method, the expression may refer to formal parameters of the method. Actual arguments must be substituted for formal parameters to derive the appropriate mutex expression in the lexical context where the function is called. PrevCtx holds the context in which the arguments themselves should be evaluated; multiple calling contexts can be chained together by the lock_returned attribute. More...

#include <ThreadSafetyCommon.h>

Collaboration diagram for clang::threadSafety::SExprBuilder::CallingContext:
Collaboration graph
[legend]

List of all members.

Public Member Functions

 CallingContext (CallingContext *P, const NamedDecl *D=nullptr)

Public Attributes

CallingContextPrev
const NamedDeclAttrDecl
const ExprSelfArg
unsigned NumArgs
const Expr *const * FunArgs
bool SelfArrow

Detailed Description

Encapsulates the lexical context of a function call. The lexical context includes the arguments to the call, including the implicit object argument. When an attribute containing a mutex expression is attached to a method, the expression may refer to formal parameters of the method. Actual arguments must be substituted for formal parameters to derive the appropriate mutex expression in the lexical context where the function is called. PrevCtx holds the context in which the arguments themselves should be evaluated; multiple calling contexts can be chained together by the lock_returned attribute.

Definition at line 317 of file ThreadSafetyCommon.h.


Constructor & Destructor Documentation

Definition at line 325 of file ThreadSafetyCommon.h.


Member Data Documentation

Definition at line 319 of file ThreadSafetyCommon.h.

Definition at line 318 of file ThreadSafetyCommon.h.


The documentation for this struct was generated from the following file: