//===--- CFGStmtMap.h - Map from Stmt* to CFGBlock* -----------*- C++ -*-===// // // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. // See https://llvm.org/LICENSE.txt for license information. // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception // //===----------------------------------------------------------------------===// // // This file defines the CFGStmtMap class, which defines a mapping from // Stmt* to CFGBlock* // //===----------------------------------------------------------------------===// #include "llvm/ADT/DenseMap.h" #include "clang/AST/ParentMap.h" #include "clang/Analysis/CFG.h" #include "clang/Analysis/CFGStmtMap.h" #include <optional> usingnamespaceclang; SMap; static SMap *AsMap(void *m) { … } CFGStmtMap::~CFGStmtMap() { … } CFGBlock *CFGStmtMap::getBlock(Stmt *S) { … } static void Accumulate(SMap &SM, CFGBlock *B) { … } CFGStmtMap *CFGStmtMap::Build(CFG *C, ParentMap *PM) { … }