clang: lib/ARCMigrate/Internals.h Source File (original) (raw)
1
2
3
4
5
6
7
8
9#ifndef LLVM_CLANG_LIB_ARCMIGRATE_INTERNALS_H
10#define LLVM_CLANG_LIB_ARCMIGRATE_INTERNALS_H
11
15#include "llvm/ADT/ArrayRef.h"
16#include
17#include
18
20 class ASTContext;
21 class Sema;
22 class Stmt;
23
24namespace arcmt {
25
27 typedef std::list ListTy;
28 ListTy List;
29
30public:
32
35
37
39
40 typedef ListTy::const_iterator iterator;
43};
44
48
52 void *Impl;
53
54public:
58
62
71 StringRef replacementText);
74
78 }
80 unsigned IDs[] = { ID1, ID2 };
82 }
85 unsigned IDs[] = { ID1, ID2, ID3 };
87 }
88
91 }
92
94 unsigned IDs[] = { ID1, ID2 };
96 }
97
106
109 }
110
112 public:
114
119 };
120
122};
123
126 bool Aborted;
127
128public:
131 }
132
136 }
137
140 Aborted = true;
141 }
142
144};
145
147public:
156
162
164
168
170};
171
173 return "__IMPL_ARCMT_REMOVED_EXPR__";
174}
175
176}
177
178}
179
180#endif
Defines the Diagnostic-related interfaces.
Defines the clang::LangOptions interface.
Holds long-lived AST nodes (such as types and decls) that can be referred to throughout the semantic ...
Represents a character-granular source range.
A little helper class used to produce diagnostics.
Concrete class used by the front-end to report problems and issues.
bool hasUnrecoverableErrorOccurred() const
Determine whether any kind of unrecoverable error has occurred.
Keeps track of the various options that can be enabled, which controls the dialect of C or C++ that i...
unsigned NoFinalizeRemoval
Engages in a tight little dance with the lexer to efficiently preprocess tokens.
Sema - This implements semantic analysis and AST building for C.
Encodes a location in the source.
This class handles loading and caching of source files into memory.
A trivial tuple used to represent a source range.
Stmt - This represents one statement.
Represents a diagnostic in a form that can be retained until its corresponding source manager is dest...
bool clearDiagnostic(ArrayRef< unsigned > IDs, SourceRange range)
void push_back(const StoredDiagnostic &diag)
bool hasDiagnostic(ArrayRef< unsigned > IDs, SourceRange range) const
ListTy::const_iterator iterator
void reportDiagnostics(DiagnosticsEngine &diags) const
std::vector< SourceLocation > & ARCMTMacroLocs
bool isGCMigration() const
MigrationPass(ASTContext &Ctx, LangOptions::GCMode OrigGCMode, Sema &sema, TransformActions &TA, const CapturedDiagList &capturedDiags, std::vector< SourceLocation > &ARCMTMacroLocs)
bool noFinalizeRemoval() const
const CapturedDiagList & CapturedDiags
MigratorOptions MigOptions
const CapturedDiagList & getDiags() const
bool CFBridgingFunctionsDefined()
LangOptions::GCMode OrigGCMode
std::optional< bool > EnableCFBridgeFns
void setNoFinalizeRemoval(bool val)
Transaction(TransformActions &TA)
virtual ~RewriteReceiver()
virtual void insert(SourceLocation loc, StringRef text)=0
virtual void remove(CharSourceRange range)=0
virtual void increaseIndentation(CharSourceRange range, SourceLocation parentIndent)=0
void increaseIndentation(SourceRange range, SourceLocation parentIndent)
DiagnosticBuilder report(SourceLocation loc, unsigned diagId, SourceRange range=SourceRange())
void replaceStmt(Stmt *S, StringRef text)
void insertAfterToken(SourceLocation loc, StringRef text)
void insert(SourceLocation loc, StringRef text)
bool clearDiagnostic(ArrayRef< unsigned > IDs, SourceRange range)
void remove(SourceRange range)
void applyRewrites(RewriteReceiver &receiver)
void reportNote(StringRef note, SourceLocation loc, SourceRange range=SourceRange())
bool hasDiagnostic(unsigned ID1, unsigned ID2, SourceRange range)
void reportWarning(StringRef warning, SourceLocation loc, SourceRange range=SourceRange())
void reportError(StringRef error, SourceLocation loc, SourceRange range=SourceRange())
bool clearDiagnostic(unsigned ID1, unsigned ID2, unsigned ID3, SourceRange range)
void replace(SourceRange range, StringRef text)
bool hasDiagnostic(unsigned ID, SourceRange range)
void replaceText(SourceLocation loc, StringRef text, StringRef replacementText)
bool clearAllDiagnostics(SourceRange range)
bool clearDiagnostic(unsigned ID1, unsigned ID2, SourceRange range)
bool hasReportedErrors() const
static StringRef getARCMTMacroName()
void writeARCDiagsToPlist(const std::string &outPath, ArrayRef< StoredDiagnostic > diags, SourceManager &SM, const LangOptions &LangOpts)
The JSON file list parser is used to communicate input to InstallAPI.