clang 23.0.0git
SerializationFormat.h File Reference
#include "clang/ScalableStaticAnalysis/Core/EntityLinker/LUSummary.h"
#include "clang/ScalableStaticAnalysis/Core/EntityLinker/LUSummaryEncoding.h"
#include "clang/ScalableStaticAnalysis/Core/EntityLinker/TUSummaryEncoding.h"
#include "clang/ScalableStaticAnalysis/Core/Model/BuildNamespace.h"
#include "clang/ScalableStaticAnalysis/Core/Model/SummaryName.h"
#include "clang/ScalableStaticAnalysis/Core/Support/ErrorBuilder.h"
#include "clang/ScalableStaticAnalysis/Core/TUSummary/TUSummary.h"
#include "clang/ScalableStaticAnalysis/Core/WholeProgramAnalysis/WPASuite.h"
#include "llvm/ADT/STLFunctionalExtras.h"
#include "llvm/ADT/StringRef.h"
#include "llvm/Support/Error.h"
#include "llvm/Support/Registry.h"
#include <variant>
#include "clang/ScalableStaticAnalysis/Core/Model/PrivateFieldNames.def"

Go to the source code of this file.

Classes

class  clang::ssaf::SerializationFormat
 Abstract base class for serialization formats. More...
class  clang::ssaf::SerializationFormat::AnalysisResultRegistryGenerator< FormatT, llvm::function_ref< SerRet(const AnalysisResult &, SerArgs...)>, llvm::function_ref< DesRet(DesArgs...)> >
struct  clang::ssaf::SerializationFormat::AnalysisResultRegistryGenerator< FormatT, llvm::function_ref< SerRet(const AnalysisResult &, SerArgs...)>, llvm::function_ref< DesRet(DesArgs...)> >::Codec
 Abstract base type stored in llvm::Registry<Codec>. More...
struct  clang::ssaf::SerializationFormat::AnalysisResultRegistryGenerator< FormatT, llvm::function_ref< SerRet(const AnalysisResult &, SerArgs...)>, llvm::function_ref< DesRet(DesArgs...)> >::Add< AnalysisResultT >
struct  clang::ssaf::FormatInfoEntry< SerializerFn, DeserializerFn >

Namespaces

namespace  clang
 The JSON file list parser is used to communicate input to InstallAPI.
namespace  clang::ssaf

Macros

#define FIELD(CLASS, FIELD_NAME)

Typedefs

using clang::ssaf::Artifact = std::variant<TUSummary, LUSummary, WPASuite>
 Sum type returned by SerializationFormat::readArtifact, used when the caller does not know up-front which kind of top-level SSAF artifact a file contains.
using clang::ssaf::ArtifactEncoding = std::variant<TUSummaryEncoding, LUSummaryEncoding>
 Lazily-deserialized counterpart of Artifact: the same on-disk artifacts but with their per-entity summary payloads left as opaque format-specific encodings rather than fully resolved analysis results.

Macro Definition Documentation

◆ FIELD

#define FIELD ( CLASS,
FIELD_NAME )
Value:
static const auto &get##FIELD_NAME(const CLASS &X) { return X.FIELD_NAME; } \
static auto &get##FIELD_NAME(CLASS &X) { return X.FIELD_NAME; }
#define X(type, name)
Definition Value.h:97

Definition at line 118 of file SerializationFormat.h.