summaryrefslogtreecommitdiffstats
path: root/llvm/tools/llvm-cov/SourceCoverageView.h
diff options
context:
space:
mode:
authorVedant Kumar <vsk@apple.com>2016-06-26 02:45:13 +0000
committerVedant Kumar <vsk@apple.com>2016-06-26 02:45:13 +0000
commit861a19c294e257e9be59c814298016e2d3b7a842 (patch)
tree6239e6ffdaa93f1d1df648d79f41c8f38c8b3dde /llvm/tools/llvm-cov/SourceCoverageView.h
parent9a2e979b3d9fdcf119cff567d87d1bea6ba5f46f (diff)
downloadbcm5719-llvm-861a19c294e257e9be59c814298016e2d3b7a842.tar.gz
bcm5719-llvm-861a19c294e257e9be59c814298016e2d3b7a842.zip
[llvm-cov] Simplify the way expansion views are rendered (NFC)
If a sub-view has already been rendered, it's helpful to re-render the expansion site before rendering the next expansion view. Make this fact explicit in the rendering interface, instead of hiding it behind an awkward Optional<LineRef> parameter. llvm-svn: 273789
Diffstat (limited to 'llvm/tools/llvm-cov/SourceCoverageView.h')
-rw-r--r--llvm/tools/llvm-cov/SourceCoverageView.h15
1 files changed, 8 insertions, 7 deletions
diff --git a/llvm/tools/llvm-cov/SourceCoverageView.h b/llvm/tools/llvm-cov/SourceCoverageView.h
index 763529a476b..03c07422964 100644
--- a/llvm/tools/llvm-cov/SourceCoverageView.h
+++ b/llvm/tools/llvm-cov/SourceCoverageView.h
@@ -16,7 +16,6 @@
#include "CoverageViewOptions.h"
#include "llvm/ProfileData/Coverage/CoverageMapping.h"
-#include "llvm/ADT/Optional.h"
#include "llvm/Support/MemoryBuffer.h"
#include <vector>
@@ -163,16 +162,18 @@ protected:
CoverageSegmentArray Segments,
unsigned ViewDepth) = 0;
- /// \brief Render an expansion view. If the expansion site must be re-rendered
- /// for clarity, it is passed in via \p FirstLine.
- virtual unsigned
- renderExpansionView(raw_ostream &OS, ExpansionView &ESV,
- Optional<LineRef> FirstLine,
+ /// \brief Render the site of an expansion.
+ virtual void
+ renderExpansionSite(raw_ostream &OS, ExpansionView &ESV, LineRef L,
const coverage::CoverageSegment *WrappedSegment,
CoverageSegmentArray Segments, unsigned ExpansionCol,
unsigned ViewDepth) = 0;
- /// \brief Render an instantiation view.
+ /// \brief Render an expansion view and any nested views.
+ virtual void renderExpansionView(raw_ostream &OS, ExpansionView &ESV,
+ unsigned ViewDepth) = 0;
+
+ /// \brief Render an instantiation view and any nested views.
virtual void renderInstantiationView(raw_ostream &OS, InstantiationView &ISV,
unsigned ViewDepth) = 0;
OpenPOWER on IntegriCloud