1 //===- CoverageExporterJson.h - Code coverage JSON exporter ---------------===//
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-exception
7 //===----------------------------------------------------------------------===//
9 // This class implements a code coverage exporter for JSON format.
11 //===----------------------------------------------------------------------===//
13 #ifndef LLVM_COV_COVERAGEEXPORTERJSON_H
14 #define LLVM_COV_COVERAGEEXPORTERJSON_H
16 #include "CoverageExporter.h"
20 class CoverageExporterJson
: public CoverageExporter
{
22 CoverageExporterJson(const coverage::CoverageMapping
&CoverageMapping
,
23 const CoverageViewOptions
&Options
, raw_ostream
&OS
)
24 : CoverageExporter(CoverageMapping
, Options
, OS
) {}
26 /// Render the CoverageMapping object.
27 void renderRoot(const CoverageFilters
&IgnoreFilters
) override
;
29 /// Render the CoverageMapping object for specified source files.
30 void renderRoot(ArrayRef
<std::string
> SourceFiles
) override
;
33 } // end namespace llvm
35 #endif // LLVM_COV_COVERAGEEXPORTERJSON_H