clang 23.0.0git
clang::CFGScopeBegin Class Reference

Represents beginning of a scope implicitly generated by the compiler on encountering a CompoundStmt. More...

#include "clang/Analysis/CFG.h"

Inheritance diagram for clang::CFGScopeBegin:
[legend]

Public Member Functions

 CFGScopeBegin ()
 CFGScopeBegin (const VarDecl *VD, const Stmt *S)
const VarDeclgetVarDecl () const
Public Member Functions inherited from clang::CFGScopeMarker
LLVM_ATTRIBUTE_RETURNS_NONNULL const StmtgetTriggerStmt () const
Public Member Functions inherited from clang::CFGElement
template<typename T>
castAs () const
 Convert to the specified CFGElement type, asserting that this CFGElement is of the desired type.
template<typename T>
std::optional< T > getAs () const
 Convert to the specified CFGElement type, returning std::nullopt if this CFGElement is not of the desired type.
Kind getKind () const
void dumpToStream (llvm::raw_ostream &OS, bool TerminateWithNewLine=true) const
void dump () const

Friends

class CFGElement

Additional Inherited Members

Public Types inherited from clang::CFGElement
enum  Kind {
  Initializer , NewAllocator , LoopExit , FullExprCleanup ,
  ScopeBegin , ScopeEnd , LifetimeEnds , SCOPE_BEGIN = ScopeBegin ,
  SCOPE_END = LifetimeEnds , Statement , Constructor , CXXRecordTypedCall ,
  STMT_BEGIN = Statement , STMT_END = CXXRecordTypedCall , AutomaticObjectDtor , DeleteDtor ,
  BaseDtor , MemberDtor , TemporaryDtor , DTOR_BEGIN = AutomaticObjectDtor ,
  DTOR_END = TemporaryDtor , CleanupFunction
}
Protected Member Functions inherited from clang::CFGScopeMarker
 CFGScopeMarker ()=default
 CFGScopeMarker (Kind K, const Stmt *S, const void *Ptr2=nullptr)
Protected Member Functions inherited from clang::CFGElement
 CFGElement (Kind kind, const void *Ptr1, const void *Ptr2=nullptr)
 CFGElement ()=default
Protected Attributes inherited from clang::CFGElement
llvm::PointerIntPair< const void *, 2 > Data1
llvm::PointerIntPair< const void *, 2 > Data2

Detailed Description

Represents beginning of a scope implicitly generated by the compiler on encountering a CompoundStmt.

Definition at line 375 of file CFG.h.

Constructor & Destructor Documentation

◆ CFGScopeBegin() [1/2]

clang::CFGScopeBegin::CFGScopeBegin ( )
inline

Definition at line 377 of file CFG.h.

◆ CFGScopeBegin() [2/2]

clang::CFGScopeBegin::CFGScopeBegin ( const VarDecl * VD,
const Stmt * S )
inline

Member Function Documentation

◆ getVarDecl()

const VarDecl * clang::CFGScopeBegin::getVarDecl ( ) const
inline

Definition at line 382 of file CFG.h.

References clang::CFGElement::Data2.

Referenced by print_elem().

◆ CFGElement

friend class CFGElement
friend

Definition at line 387 of file CFG.h.

References CFGElement, and clang::CFGElement::ScopeBegin.

Referenced by CFGElement.


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