|
clang 23.0.0git
|
A self-applicable function. More...
#include "clang/Analysis/Analyses/ThreadSafetyTIL.h"
Public Member Functions | |
| SFunction (Variable *Vd, SExpr *B) | |
| SFunction (const SFunction &F, Variable *Vd, SExpr *B) | |
| Variable * | variableDecl () |
| const Variable * | variableDecl () const |
| SExpr * | body () |
| const SExpr * | body () const |
| template<class V> | |
| V::R_SExpr | traverse (V &Vs, typename V::R_Ctx Ctx) |
| template<class C> | |
| C::CType | compare (const SFunction *E, C &Cmp) const |
| Public Member Functions inherited from clang::threadSafety::til::SExpr | |
| SExpr ()=delete | |
| TIL_Opcode | opcode () const |
| void * | operator new (size_t S, MemRegionRef &R) |
| void * | operator new (size_t)=delete |
| SExpr objects must be created in an arena. | |
| void | operator delete (void *)=delete |
| SExpr objects cannot be deleted. | |
| unsigned | id () const |
| Returns the instruction ID for this expression. | |
| BasicBlock * | block () const |
| Returns the block, if this is an instruction in a basic block, otherwise returns null. | |
| void | setID (BasicBlock *B, unsigned id) |
| Set the basic block and instruction ID for this expression. | |
Static Public Member Functions | |
| static bool | classof (const SExpr *E) |
Additional Inherited Members | |
| Protected Member Functions inherited from clang::threadSafety::til::SExpr | |
| SExpr (TIL_Opcode Op) | |
| SExpr (const SExpr &E) | |
| SExpr & | operator= (const SExpr &)=delete |
| Protected Attributes inherited from clang::threadSafety::til::SExpr | |
| const TIL_Opcode | Opcode |
| unsigned char | Reserved = 0 |
| unsigned short | Flags = 0 |
| unsigned | SExprID = 0 |
| BasicBlock * | Block = nullptr |
A self-applicable function.
A self-applicable function can be applied to itself. It's useful for implementing objects and late binding.
Definition at line 632 of file ThreadSafetyTIL.h.
Definition at line 634 of file ThreadSafetyTIL.h.
References clang::threadSafety::til::Variable::setKind(), clang::threadSafety::til::SExpr::SExpr(), and clang::threadSafety::til::Variable::VK_SFun.
Referenced by compare(), and SFunction().
|
inline |
Definition at line 641 of file ThreadSafetyTIL.h.
References clang::threadSafety::til::Variable::setKind(), clang::threadSafety::til::SExpr::SExpr(), SFunction(), and clang::threadSafety::til::Variable::VK_SFun.
|
inline |
Definition at line 653 of file ThreadSafetyTIL.h.
References clang::threadSafety::til::SExpr::SExpr().
Referenced by compare(), and clang::threadSafety::til::PrettyPrinter< Self, StreamType >::printSFunction().
|
inline |
Definition at line 654 of file ThreadSafetyTIL.h.
References clang::threadSafety::til::SExpr::SExpr().
Definition at line 648 of file ThreadSafetyTIL.h.
References clang::threadSafety::til::SExpr::opcode(), and clang::threadSafety::til::SExpr::SExpr().
|
inline |
Definition at line 669 of file ThreadSafetyTIL.h.
References body(), clang::C, Cmp, SFunction(), and variableDecl().
|
inline |
Definition at line 657 of file ThreadSafetyTIL.h.
References clang::threadSafety::til::Variable::traverse(), and V.
|
inline |
Definition at line 650 of file ThreadSafetyTIL.h.
Referenced by compare(), and clang::threadSafety::til::PrettyPrinter< Self, StreamType >::printSFunction().
|
inline |
Definition at line 651 of file ThreadSafetyTIL.h.