class CFGBlock::AdjacentBlock
Declaration
class CFGBlock::AdjacentBlock { /* full declaration omitted */ };
Description
This class represents a potential adjacent block in the CFG. It encodes whether or not the block is actually reachable, or can be proved to be trivially unreachable. For some cases it allows one to encode scenarios where a block was substituted because the original (now alternate) block is unreachable.
Declared at: clang/include/clang/Analysis/CFG.h:792
Member Variables
- private clang::CFGBlock* ReachableBlock
- private llvm::PointerIntPair<CFGBlock*, 2> UnreachableBlock
Method Overview
- public AdjacentBlock(clang::CFGBlock * B, bool IsReachable)
- public AdjacentBlock(clang::CFGBlock * B, clang::CFGBlock * AlternateBlock)
- public clang::CFGBlock * getPossiblyUnreachableBlock() const
- public clang::CFGBlock * getReachableBlock() const
- public bool isReachable() const
- public clang::CFGBlock * operator clang::CFGBlock *() const
Methods
¶AdjacentBlock(clang::CFGBlock* B,
bool IsReachable)
AdjacentBlock(clang::CFGBlock* B,
bool IsReachable)
Description
Construct an AdjacentBlock with a possibly unreachable block.
Declared at: clang/include/clang/Analysis/CFG.h:804
Parameters
- clang::CFGBlock* B
- bool IsReachable
¶AdjacentBlock(clang::CFGBlock* B,
clang::CFGBlock* AlternateBlock)
AdjacentBlock(clang::CFGBlock* B,
clang::CFGBlock* AlternateBlock)
Description
Construct an AdjacentBlock with a reachable block and an alternate unreachable block.
Declared at: clang/include/clang/Analysis/CFG.h:808
Parameters
- clang::CFGBlock* B
- clang::CFGBlock* AlternateBlock
¶clang::CFGBlock* getPossiblyUnreachableBlock()
const
clang::CFGBlock* getPossiblyUnreachableBlock()
const
Description
Get the potentially unreachable block.
Declared at: clang/include/clang/Analysis/CFG.h:816
¶clang::CFGBlock* getReachableBlock() const
clang::CFGBlock* getReachableBlock() const
Description
Get the reachable block, if one exists.
Declared at: clang/include/clang/Analysis/CFG.h:811
¶bool isReachable() const
bool isReachable() const
Declared at: clang/include/clang/Analysis/CFG.h:834
¶clang::CFGBlock* operator clang::CFGBlock*() const
clang::CFGBlock* operator clang::CFGBlock*() const
Description
Provide an implicit conversion to CFGBlock* so that AdjacentBlock can be substituted for CFGBlock*.
Declared at: clang/include/clang/Analysis/CFG.h:822