32 using Array = llvm::json::Array;
33 using Object = llvm::json::Object;
34 using Value = llvm::json::Value;
42 llvm::StringRef Path)
override;
48 llvm::StringRef Path)
override;
53 llvm::StringRef Path)
override;
59 llvm::StringRef Path)
override;
62 llvm::function_ref<
void(llvm::StringRef Name, llvm::StringRef Desc)>
63 Callback)
const override;
67 llvm::function_ref<llvm::Expected<EntityId>(
const Object &)>;
72 llvm::function_ref<llvm::Expected<std::unique_ptr<EntitySummary>>(
78 static std::map<SummaryName, FormatInfo> initFormatInfos();
79 const std::map<SummaryName, FormatInfo> FormatInfos = initFormatInfos();
81 EntityId entityIdFromJSON(
const uint64_t EntityIdIndex)
const;
82 uint64_t entityIdToJSON(
EntityId EI)
const;
85 entityIdFromJSONObject(
const Object &EntityIdObject);
86 static Object entityIdToJSONObject(
EntityId EI);
89 buildNamespaceFromJSON(
const Object &BuildNamespaceObject)
const;
93 nestedBuildNamespaceFromJSON(
const Array &NestedBuildNamespaceArray)
const;
97 entityNameFromJSON(
const Object &EntityNameObject)
const;
98 Object entityNameToJSON(
const EntityName &EN)
const;
101 entityLinkageFromJSON(
const Object &EntityLinkageObject)
const;
105 entityIdTableEntryFromJSON(
const Object &EntityIdTableEntryObject)
const;
107 entityIdTableFromJSON(
const Array &EntityIdTableArray)
const;
109 Array entityIdTableToJSON(
const EntityIdTable &IdTable)
const;
112 linkageTableEntryFromJSON(
const Object &LinkageTableEntryObject)
const;
116 linkageTableFromJSON(
const Array &LinkageTableArray,
117 std::set<EntityId> ExpectedIds)
const;
118 Array linkageTableToJSON(
119 const std::map<EntityId, EntityLinkage> &LinkageTable)
const;
123 const Object &EntitySummaryObject,
129 entityDataMapEntryFromJSON(
const Object &EntityDataMapEntryObject,
133 entityDataMapEntryToJSON(
const EntityId EI,
137 entityDataMapFromJSON(
const SummaryName &SN,
const Array &EntityDataArray,
141 const std::map<
EntityId, std::unique_ptr<EntitySummary>>
142 &EntityDataMap)
const;
145 std::map<EntityId, std::unique_ptr<EntitySummary>>>>
146 summaryDataMapEntryFromJSON(
const Object &SummaryDataObject,
150 const std::map<
EntityId, std::unique_ptr<EntitySummary>> &SD)
const;
153 std::map<SummaryName, std::map<EntityId, std::unique_ptr<EntitySummary>>>>
154 summaryDataMapFromJSON(
const Array &SummaryDataArray,
158 std::map<
EntityId, std::unique_ptr<EntitySummary>>>
159 &SummaryDataMap)
const;
162 encodingDataMapEntryFromJSON(
const Object &EntityDataMapEntryObject)
const;
163 Object encodingDataMapEntryToJSON(
165 const std::unique_ptr<EntitySummaryEncoding> &Encoding)
const;
168 encodingDataMapFromJSON(
const Array &EntityDataArray)
const;
169 Array encodingDataMapToJSON(
170 const std::map<
EntityId, std::unique_ptr<EntitySummaryEncoding>>
171 &EncodingDataMap)
const;
174 SummaryName, std::map<EntityId, std::unique_ptr<EntitySummaryEncoding>>>>
175 encodingSummaryDataMapEntryFromJSON(
176 const Object &SummaryDataMapEntryObject)
const;
177 Object encodingSummaryDataMapEntryToJSON(
179 const std::map<
EntityId, std::unique_ptr<EntitySummaryEncoding>>
183 SummaryName, std::map<EntityId, std::unique_ptr<EntitySummaryEncoding>>>>
184 encodingSummaryDataMapFromJSON(
const Array &SummaryDataArray)
const;
185 Array encodingSummaryDataMapToJSON(
187 std::map<
EntityId, std::unique_ptr<EntitySummaryEncoding>>>
188 &EncodingSummaryDataMap)
const;