Lines Matching defs:JOS
86 ModelDumper(llvm::json::OStream &JOS, const Environment &Env)
87 : JOS(JOS), Env(Env) {}
90 JOS.attribute("value_id", llvm::to_string(&V));
94 JOS.attribute("kind", debugString(V.getKind()));
103 JOS.attributeObject(
109 JOS.attributeObject(("p:" + Prop.first()).str(),
115 JOS.attribute("formula", llvm::to_string(B->formula()));
116 JOS.attribute("truth", Env.proves(B->formula()) ? "true"
123 JOS.attribute("location", llvm::to_string(&L));
127 JOS.attribute("type", L.getType().getAsString());
134 JOS.attributeObject("f:" + Child.first->getNameAsString(), [&] {
140 JOS.attributeObject(("sf:" + SyntheticField.first()).str(),
146 llvm::json::OStream &JOS;
162 llvm::json::OStream JOS{JStringStream, /*Indent=*/2};
199 JOS.objectBegin();
200 JOS.attributeBegin("states");
201 JOS.objectBegin();
206 JOS.objectEnd();
207 JOS.attributeEnd();
209 JOS.attributeArray("timeline", [&] {
211 JOS.object([&] {
212 JOS.attribute("block", blockID(E.Block->getBlockID()));
213 JOS.attribute("iter", E.Iter);
214 JOS.attribute("post_visit", E.PostVisit);
215 JOS.attribute("converged", E.Converged);
219 JOS.attributeObject("cfg", [&] {
224 JOS.objectEnd();
271 JOS.attributeObject(elementIterID(Block, Iter, ElementIndex), [&] {
272 JOS.attribute("block", blockID(Block));
273 JOS.attribute("iter", Iter);
274 JOS.attribute("post_visit", PostVisit);
275 JOS.attribute("element", ElementIndex);
285 JOS.attributeObject(
286 "value", [&] { ModelDumper(JOS, State.Env).dump(*V); });
289 JOS.attributeObject(
290 "value", [&] { ModelDumper(JOS, State.Env).dump(*Loc); });
295 JOS.attribute("logs", ContextLogs);
302 JOS.attribute("builtinLattice", BuiltinLattice);
321 JOS.attributeObject(blockID(B.getBlockID()), [&] {
322 JOS.attributeArray("iters", [&] {
325 JOS.object([&] {
326 JOS.attribute("iter", Iter.Iter);
327 JOS.attribute("post_visit", Iter.PostVisit);
328 JOS.attribute("converged", Iter.Converged);
332 JOS.attributeArray("elements", [&] {
337 JOS.value(Dump);