xref: /llvm-project/libc/benchmarks/JSON.h (revision deae7e982a3b08996455e2cdfdc5062bf37895a3)
1438f7fc0SSiva Chandra Reddy //===-- JSON serialization routines -----------------------------*- C++ -*-===//
2438f7fc0SSiva Chandra Reddy //
3438f7fc0SSiva Chandra Reddy // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
4438f7fc0SSiva Chandra Reddy // See https://llvm.org/LICENSE.txt for license information.
5438f7fc0SSiva Chandra Reddy // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
6438f7fc0SSiva Chandra Reddy //
7438f7fc0SSiva Chandra Reddy //===----------------------------------------------------------------------===//
8438f7fc0SSiva Chandra Reddy 
9438f7fc0SSiva Chandra Reddy #ifndef LLVM_LIBC_UTILS_BENCHMARK_JSON_H
10438f7fc0SSiva Chandra Reddy #define LLVM_LIBC_UTILS_BENCHMARK_JSON_H
11438f7fc0SSiva Chandra Reddy 
12438f7fc0SSiva Chandra Reddy #include "LibcBenchmark.h"
13438f7fc0SSiva Chandra Reddy #include "LibcMemoryBenchmark.h"
14438f7fc0SSiva Chandra Reddy #include "llvm/Support/JSON.h"
15438f7fc0SSiva Chandra Reddy 
16438f7fc0SSiva Chandra Reddy namespace llvm {
17438f7fc0SSiva Chandra Reddy namespace libc_benchmarks {
18438f7fc0SSiva Chandra Reddy 
19438f7fc0SSiva Chandra Reddy // Parses a Study from a json string.
20*deae7e98SGuillaume Chatelet Expected<Study> parseJsonStudy(StringRef Content);
21438f7fc0SSiva Chandra Reddy 
22438f7fc0SSiva Chandra Reddy // Serialize a Study as json.
23*deae7e98SGuillaume Chatelet void serializeToJson(const Study &S, llvm::json::OStream &JOS);
24438f7fc0SSiva Chandra Reddy 
25438f7fc0SSiva Chandra Reddy } // namespace libc_benchmarks
26438f7fc0SSiva Chandra Reddy } // namespace llvm
27438f7fc0SSiva Chandra Reddy 
28438f7fc0SSiva Chandra Reddy #endif // LLVM_LIBC_UTILS_BENCHMARK_JSON_H
29