summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--Source/cmSourceFile.cxx6
-rw-r--r--Source/cmSourceFile.h14
2 files changed, 19 insertions, 1 deletions
diff --git a/Source/cmSourceFile.cxx b/Source/cmSourceFile.cxx
index 549ff28..a685435 100644
--- a/Source/cmSourceFile.cxx
+++ b/Source/cmSourceFile.cxx
@@ -76,6 +76,12 @@ const char* cmSourceFile::GetLanguage() const
}
//----------------------------------------------------------------------------
+cmSourceFileLocation const& cmSourceFile::GetLocation() const
+{
+ return this->Location;
+}
+
+//----------------------------------------------------------------------------
std::string const& cmSourceFile::GetFullPath()
{
if(this->FullPath.empty())
diff --git a/Source/cmSourceFile.h b/Source/cmSourceFile.h
index 47f31eb..9ad6f3e 100644
--- a/Source/cmSourceFile.h
+++ b/Source/cmSourceFile.h
@@ -53,12 +53,24 @@ public:
bool GetPropertyAsBool(const char *prop) const;
/**
- * The full path to the file.
+ * The full path to the file. The non-const version of this method
+ * may attempt to locate the file on disk and finalize its location.
+ * The const version of this method may return an empty string if
+ * the non-const version has not yet been called (yes this is a
+ * horrible interface, but is necessary for backwards
+ * compatibility).
*/
std::string const& GetFullPath();
std::string const& GetFullPath() const;
/**
+ * Get the information currently known about the source file
+ * location without attempting to locate the file as GetFullPath
+ * would. See cmSourceFileLocation documentation.
+ */
+ cmSourceFileLocation const& GetLocation() const;
+
+ /**
* Get the file extension of this source file.
*/
std::string const& GetExtension() const;