|
clang 22.0.0git
|
An abstract base class for a single, atomic lifetime-relevant event. More...
#include "clang/Analysis/Analyses/LifetimeSafety/Facts.h"
Public Types | |
| enum class | Kind : uint8_t { Issue , Expire , OriginFlow , ReturnOfOrigin , Use , TestPoint } |
Public Member Functions | |
| virtual | ~Fact ()=default |
| Kind | getKind () const |
| void | setID (FactID ID) |
| FactID | getID () const |
| template<typename T> | |
| const T * | getAs () const |
| virtual void | dump (llvm::raw_ostream &OS, const LoanManager &, const OriginManager &) const |
Protected Member Functions | |
| Fact (Kind K) | |
An abstract base class for a single, atomic lifetime-relevant event.
|
strong |
| Enumerator | |
|---|---|
| Issue | A new loan is issued from a borrow expression (e.g., &x). |
| Expire | A loan expires as its underlying storage is freed (e.g., variable goes out of scope). |
| OriginFlow | An origin is propagated from a source to a destination (e.g., p = q). This can also optionally kill the destination origin before flowing into it. Otherwise, the source's loan set is merged into the destination's loan set. |
| ReturnOfOrigin | An origin escapes the function by flowing into the return value. |
| Use | An origin is used (eg. appears as l-value expression like DeclRefExpr). |
| TestPoint | A marker for a specific point in the code, for testing. |
|
inlineprotected |
Definition at line 58 of file Facts.h.
Referenced by clang::lifetimes::internal::ExpireFact::classof(), clang::lifetimes::internal::IssueFact::classof(), clang::lifetimes::internal::OriginFlowFact::classof(), clang::lifetimes::internal::ReturnOfOriginFact::classof(), clang::lifetimes::internal::TestPointFact::classof(), clang::lifetimes::internal::UseFact::classof(), clang::lifetimes::internal::ExpireFact::ExpireFact(), clang::lifetimes::internal::IssueFact::IssueFact(), clang::lifetimes::internal::OriginFlowFact::OriginFlowFact(), clang::lifetimes::internal::ReturnOfOriginFact::ReturnOfOriginFact(), clang::lifetimes::internal::TestPointFact::TestPointFact(), and clang::lifetimes::internal::UseFact::UseFact().
|
virtualdefault |
|
virtual |
|
inline |
Definition at line 65 of file Facts.h.
Referenced by clang::lifetimes::internal::DataflowAnalysis< Derived, Lattice, Dir >::getState().
|
inline |
Definition at line 62 of file Facts.h.
Referenced by clang::lifetimes::internal::ExpireFact::classof(), clang::lifetimes::internal::IssueFact::classof(), clang::lifetimes::internal::OriginFlowFact::classof(), clang::lifetimes::internal::ReturnOfOriginFact::classof(), clang::lifetimes::internal::TestPointFact::classof(), and clang::lifetimes::internal::UseFact::classof().
|
inline |