clang
23.0.0git
include
clang
ScalableStaticAnalysisFramework
SourceTransformation
Transformation.h
Go to the documentation of this file.
1
//===- Transformation.h -----------------------------------------*- C++ -*-===//
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-exception
6
//
7
//===----------------------------------------------------------------------===//
8
//
9
// Abstract base class for source transformations. A Transformation is an
10
// ASTConsumer that consumes a previously computed WPASuite.
11
//
12
//===----------------------------------------------------------------------===//
13
14
#ifndef LLVM_CLANG_SCALABLESTATICANALYSISFRAMEWORK_SOURCETRANSFORMATION_TRANSFORMATION_H
15
#define LLVM_CLANG_SCALABLESTATICANALYSISFRAMEWORK_SOURCETRANSFORMATION_TRANSFORMATION_H
16
17
#include "
clang/AST/ASTConsumer.h
"
18
#include "
clang/ScalableStaticAnalysisFramework/Core/WholeProgramAnalysis/WPASuite.h
"
19
#include "
clang/ScalableStaticAnalysisFramework/SourceTransformation/SourceEditEmitter.h
"
20
#include "
clang/ScalableStaticAnalysisFramework/SourceTransformation/TransformationReportEmitter.h
"
21
22
namespace
clang::ssaf
{
23
24
class
Transformation
:
public
clang::ASTConsumer
{
25
public
:
26
Transformation
(
const
WPASuite
&
Suite
,
SourceEditEmitter
&
Edits
,
27
TransformationReportEmitter
&
Report
)
28
:
Suite
(
Suite
),
Edits
(
Edits
),
Report
(
Report
) {}
29
30
protected
:
31
const
WPASuite
&
Suite
;
32
SourceEditEmitter
&
Edits
;
33
TransformationReportEmitter
&
Report
;
34
};
35
36
}
// namespace clang::ssaf
37
38
#endif
// LLVM_CLANG_SCALABLESTATICANALYSISFRAMEWORK_SOURCETRANSFORMATION_TRANSFORMATION_H
ASTConsumer.h
SourceEditEmitter.h
TransformationReportEmitter.h
WPASuite.h
clang::ASTConsumer
ASTConsumer - This is an abstract interface that should be implemented by clients that read ASTs.
Definition
ASTConsumer.h:35
clang::ssaf::SourceEditEmitter
Definition
SourceEditEmitter.h:20
clang::ssaf::TransformationReportEmitter
Definition
TransformationReportEmitter.h:22
clang::ssaf::Transformation::Transformation
Transformation(const WPASuite &Suite, SourceEditEmitter &Edits, TransformationReportEmitter &Report)
Definition
Transformation.h:26
clang::ssaf::Transformation::Edits
SourceEditEmitter & Edits
Definition
Transformation.h:32
clang::ssaf::Transformation::Suite
const WPASuite & Suite
Definition
Transformation.h:31
clang::ssaf::Transformation::Report
TransformationReportEmitter & Report
Definition
Transformation.h:33
clang::ssaf::WPASuite
Bundles the EntityIdTable (moved from the LUSummary) and the analysis results produced by one Analysi...
Definition
WPASuite.h:37
clang::ssaf
Definition
CallGraphSummary.h:17
Generated on
for clang by
1.14.0