|
clang 22.0.0git
|
An abstract base class for a single "Loan" which represents lending a storage in memory. More...
#include "clang/Analysis/Analyses/LifetimeSafety/Loans.h"
Public Types | |
| enum class | Kind : uint8_t { Path , Placeholder } |
| TODO: Represent opaque loans. More... | |
Public Member Functions | |
| Loan (Kind K, LoanID ID) | |
| virtual | ~Loan ()=default |
| Kind | getKind () const |
| LoanID | getID () const |
| virtual void | dump (llvm::raw_ostream &OS) const =0 |
An abstract base class for a single "Loan" which represents lending a storage in memory.
|
strong |
TODO: Represent opaque loans.
TODO: Represent nullptr: loans to no path. Accessing it UB! Currently it is represented as empty LoanSet
| Enumerator | |
|---|---|
| Path | A loan with an access path to a storage location. |
| Placeholder | A non-expiring placeholder loan for a parameter, representing a borrow from the function's caller. |
Definition at line 52 of file Loans.h.
Referenced by clang::lifetimes::internal::PathLoan::classof(), clang::lifetimes::internal::PlaceholderLoan::classof(), clang::lifetimes::internal::PathLoan::PathLoan(), and clang::lifetimes::internal::PlaceholderLoan::PlaceholderLoan().
|
virtualdefault |
|
pure virtual |
Implemented in clang::lifetimes::internal::PathLoan, and clang::lifetimes::internal::PlaceholderLoan.
Referenced by clang::lifetimes::internal::ExpireFact::dump(), and clang::lifetimes::internal::IssueFact::dump().
|
inline |
Definition at line 56 of file Loans.h.
Referenced by clang::lifetimes::internal::PathLoan::dump(), and clang::lifetimes::internal::PlaceholderLoan::dump().
|
inline |
Definition at line 55 of file Loans.h.
Referenced by clang::lifetimes::internal::PathLoan::classof(), and clang::lifetimes::internal::PlaceholderLoan::classof().