36 lines · c
1//===- CoverageExporterJson.h - Code coverage JSON exporter ---------------===//2//3// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.4// See https://llvm.org/LICENSE.txt for license information.5// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception6//7//===----------------------------------------------------------------------===//8//9// This class implements a code coverage exporter for JSON format.10//11//===----------------------------------------------------------------------===//12 13#ifndef LLVM_COV_COVERAGEEXPORTERJSON_H14#define LLVM_COV_COVERAGEEXPORTERJSON_H15 16#include "CoverageExporter.h"17 18namespace llvm {19 20class CoverageExporterJson : public CoverageExporter {21public:22 CoverageExporterJson(const coverage::CoverageMapping &CoverageMapping,23 const CoverageViewOptions &Options, raw_ostream &OS)24 : CoverageExporter(CoverageMapping, Options, OS) {}25 26 /// Render the CoverageMapping object.27 void renderRoot(const CoverageFilters &IgnoreFilters) override;28 29 /// Render the CoverageMapping object for specified source files.30 void renderRoot(ArrayRef<std::string> SourceFiles) override;31};32 33} // end namespace llvm34 35#endif // LLVM_COV_COVERAGEEXPORTERJSON_H36