// Copyright 2020 The Fuchsia Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.

// Package llvm defines data structures that can be used to read code coverage
// information exported from the llvm-cov tool. The schema is defined in:
// https://github.com/llvm/llvm-project/blob/HEAD/llvm/tools/llvm-cov/CoverageExporterJson.cpp
package llvm
