llvm-cov: Distinguish expansion/instantiation from SourceCoverageView
authorJustin Bogner <mail@justinbogner.com>
Wed, 17 Sep 2014 05:33:20 +0000 (05:33 +0000)
committerJustin Bogner <mail@justinbogner.com>
Wed, 17 Sep 2014 05:33:20 +0000 (05:33 +0000)
commitd1b4e60339418d86759970d25aaa1aff7a3d9ce8
tree209112cdad8d2f88a63f6935e3e87978fb4954ba
parentd5f73530dedaabeb61e534a8f4b6dd285adcab4c
llvm-cov: Distinguish expansion/instantiation from SourceCoverageView

SourceCoverageView currently has "Kind" and a list of child views, all
of which must have either an expansion or an instantiation Kind. In
addition to being an error-prone design, this makes it awkward to
differentiate between the two child types and adds a number of
optionally used members to the type.

Split the subview types into their own separate objects, and maintain
lists of each rather than one combined "Children" list.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@217940 91177308-0d34-0410-b5e6-96231b3b80d8
tools/llvm-cov/CodeCoverage.cpp
tools/llvm-cov/SourceCoverageView.cpp
tools/llvm-cov/SourceCoverageView.h