clang 24.0.0git
clang::lifetimes::internal::PlaceholderBase Class Reference

Represents the base of a placeholder access path, which is a function parameter, the implicit 'this' object of an instance method, or a field of the enclosing class. More...

#include "clang/Analysis/Analyses/LifetimeSafety/Loans.h"

Inheritance diagram for clang::lifetimes::internal::PlaceholderBase:
[legend]

Public Types

using KeyTy

Public Member Functions

 PlaceholderBase (const ParmVarDecl *PVD)
 PlaceholderBase (const CXXMethodDecl *MD)
 PlaceholderBase (const FieldDecl *FD)
const ParmVarDecl * getParmVarDecl () const
const CXXMethodDecl * getImplicitThisParent () const
const FieldDecl * getFieldDecl () const
void Profile (llvm::FoldingSetNodeID &ID) const

Static Public Member Functions

static void Profile (llvm::FoldingSetNodeID &ID, KeyTy ParamMethodOrField)

Detailed Description

Represents the base of a placeholder access path, which is a function parameter, the implicit 'this' object of an instance method, or a field of the enclosing class.

Placeholder paths never expire within the function scope, as they represent storage from the caller's or object's scope.

Definition at line 77 of file Loans.h.

Member Typedef Documentation

◆ KeyTy

Initial value:
llvm::PointerUnion<const ParmVarDecl *, const CXXMethodDecl *,
const FieldDecl *>
Represents a static or instance method of a struct/union/class.
Definition DeclCXX.h:2150
Represents a member of a struct/union/class.
Definition Decl.h:3299
Represents a parameter to a function.
Definition Decl.h:1820

Definition at line 99 of file Loans.h.

Constructor & Destructor Documentation

◆ PlaceholderBase() [1/3]

clang::lifetimes::internal::PlaceholderBase::PlaceholderBase ( const ParmVarDecl * PVD)
inline

Definition at line 83 of file Loans.h.

◆ PlaceholderBase() [2/3]

clang::lifetimes::internal::PlaceholderBase::PlaceholderBase ( const CXXMethodDecl * MD)
inline

Definition at line 84 of file Loans.h.

◆ PlaceholderBase() [3/3]

clang::lifetimes::internal::PlaceholderBase::PlaceholderBase ( const FieldDecl * FD)
inline

Definition at line 85 of file Loans.h.

Member Function Documentation

◆ getFieldDecl()

const FieldDecl * clang::lifetimes::internal::PlaceholderBase::getFieldDecl ( ) const
inline

Definition at line 95 of file Loans.h.

◆ getImplicitThisParent()

const CXXMethodDecl * clang::lifetimes::internal::PlaceholderBase::getImplicitThisParent ( ) const
inline

Definition at line 91 of file Loans.h.

◆ getParmVarDecl()

const ParmVarDecl * clang::lifetimes::internal::PlaceholderBase::getParmVarDecl ( ) const
inline

Definition at line 87 of file Loans.h.

◆ Profile() [1/2]

void clang::lifetimes::internal::PlaceholderBase::Profile ( llvm::FoldingSetNodeID & ID) const
inline

Definition at line 106 of file Loans.h.

References Profile().

◆ Profile() [2/2]

void clang::lifetimes::internal::PlaceholderBase::Profile ( llvm::FoldingSetNodeID & ID,
KeyTy ParamMethodOrField )
inlinestatic

Definition at line 102 of file Loans.h.

Referenced by Profile().


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