aboutsummaryrefslogtreecommitdiff
path: root/include/clang/Basic/SourceManager.h
diff options
context:
space:
mode:
Diffstat (limited to 'include/clang/Basic/SourceManager.h')
-rw-r--r--include/clang/Basic/SourceManager.h11
1 files changed, 10 insertions, 1 deletions
diff --git a/include/clang/Basic/SourceManager.h b/include/clang/Basic/SourceManager.h
index 325f9ed106..311bea1d3c 100644
--- a/include/clang/Basic/SourceManager.h
+++ b/include/clang/Basic/SourceManager.h
@@ -220,8 +220,11 @@ class SourceManager {
unsigned LastLineNoFilePos;
unsigned LastLineNoResult;
+ /// MainFileID - The file ID for the main source file of the translation unit.
+ unsigned MainFileID;
+
public:
- SourceManager() : LastLineNoFileIDQuery(~0U) {}
+ SourceManager() : LastLineNoFileIDQuery(~0U), MainFileID(0) {}
~SourceManager() {}
void clearIDTables() {
@@ -231,6 +234,12 @@ public:
LastLineNoContentCache = 0;
}
+ /// getMainFileID - Returns the FileID of the main source file.
+ unsigned getMainFileID() const { return MainFileID; }
+
+ /// setMainFileID - Set the FileID of the main source file.
+ void setMainFileID(unsigned ID) { MainFileID = ID; }
+
/// createFileID - Create a new FileID that represents the specified file
/// being #included from the specified IncludePosition. This returns 0 on
/// error and translates NULL into standard input.