clang 23.0.0git
JSONFormatImpl.cpp File Reference
#include "JSONFormatImpl.h"
#include "clang/ScalableStaticAnalysis/Core/Serialization/SerializationFormatRegistry.h"
#include "llvm/Support/Registry.h"
#include "llvm/TargetParser/Triple.h"

Go to the source code of this file.

Namespaces

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

Functions

 LLVM_DEFINE_REGISTRY_EX (CLANG_ABI_EXPORT, llvm::Registry< JSONFormat::FormatInfo >) LLVM_DEFINE_REGISTRY_EX(CLANG_ABI_EXPORT
static llvm::Registry< JSONFormat::AnalysisResultRegistry::Codec > SerializationFormatRegistry::Add< JSONFormatRegisterJSONFormat ("json", "JSON serialization format")
llvm::Expected< Valueclang::ssaf::readJSON (llvm::StringRef Path)
llvm::Error clang::ssaf::writeJSON (Value &&V, llvm::StringRef Path)
SummaryName clang::ssaf::summaryNameFromJSON (llvm::StringRef SummaryNameStr)
llvm::StringRef clang::ssaf::summaryNameToJSON (const SummaryName &SN)
llvm::Expected< llvm::StringRef > clang::ssaf::readSummaryType (const Object &RootObject)
 Reads the JSONTypeKey field from the root object as a string.
llvm::Error clang::ssaf::checkSummaryType (const Object &RootObject, llvm::StringRef ExpectedType)
 Reads the JSONTypeKey field from the root object and verifies it equals ExpectedType.
AnalysisName clang::ssaf::analysisNameFromJSON (llvm::StringRef AnalysisNameStr)
llvm::StringRef clang::ssaf::analysisNameToJSON (const AnalysisName &AN)
llvm::Expected< BuildNamespaceKindclang::ssaf::buildNamespaceKindFromJSON (llvm::StringRef BuildNamespaceKindStr)
llvm::StringRef clang::ssaf::buildNamespaceKindToJSON (BuildNamespaceKind BNK)
static llvm::Expected< std::pair< llvm::StringRef, llvm::StringRef > > clang::ssaf::entityNameCoreFromJSON (const Object &EntityNameObject)
 Reads "usr" and "suffix" fields from an EntityName JSON object.
llvm::Expected< EntityLinkageTypeclang::ssaf::entityLinkageTypeFromJSON (llvm::StringRef EntityLinkageTypeStr)
llvm::StringRef clang::ssaf::entityLinkageTypeToJSON (EntityLinkageType LT)
llvm::Error clang::ssaf::validateNormalizedTargetTriple (llvm::StringRef Triple)
 Validates that Triple is a target triple string in normalized form.
static llvm::Expected< EntityIdclang::ssaf::entityIdTableEntryIdFromJSON (const Object &EntityIdTableEntryObject, llvm::function_ref< EntityId(uint64_t)> MakeId)
 Shared logic for reading the "id" field from an EntityIdTableEntry object.
static llvm::Expected< EntityIdTableclang::ssaf::entityIdTableFromJSONImpl (const Array &EntityIdTableArray, llvm::function_ref< llvm::Expected< std::pair< EntityName, EntityId > >(const Object &)> EntryReader, llvm::function_ref< std::map< EntityName, EntityId > &(EntityIdTable &)> GetEntities)
 Shared logic for deserializing an EntityIdTable from a JSON array.

Variables

volatile int clang::ssaf::JSONFormatAnchorSource = 0

Function Documentation

◆ LLVM_DEFINE_REGISTRY_EX()

LLVM_DEFINE_REGISTRY_EX ( CLANG_ABI_EXPORT ,
llvm::Registry< JSONFormat::FormatInfo >  )

◆ RegisterJSONFormat()

llvm::Registry< JSONFormat::AnalysisResultRegistry::Codec > SerializationFormatRegistry::Add< JSONFormat > RegisterJSONFormat ( "json" ,
"JSON serialization format"  )
static