Files
2024-11-06 15:43:13 +02:00

52 lines
1.1 KiB
C++

#pragma once
//
// This file is distributed under the MIT License. See LICENSE.md for details.
//
#include <string>
#include "revng/PTML/Tag.h"
class BasicBlockID;
namespace model {
class Binary;
}
namespace ptml {
class MarkupBuilder;
}
namespace yield {
class Function;
namespace crossrelations {
class CrossRelations;
} // namespace crossrelations
namespace svg {
namespace detail {
using CrossRelations = yield::crossrelations::CrossRelations;
} // namespace detail
std::string controlFlowGraph(const ::ptml::MarkupBuilder &B,
const yield::Function &InternalFunction,
const model::Binary &Binary);
std::string callGraph(const ::ptml::MarkupBuilder &B,
const detail::CrossRelations &CrossRelationTree,
const model::Binary &Binary);
std::string callGraphSlice(const ::ptml::MarkupBuilder &B,
llvm::StringRef SlicePoint,
const detail::CrossRelations &CrossRelationTree,
const model::Binary &Binary);
} // namespace svg
} // namespace yield