summaryrefslogtreecommitdiffstats
path: root/Source
diff options
context:
space:
mode:
authorBrad King <brad.king@kitware.com>2007-12-17 15:12:19 (GMT)
committerBrad King <brad.king@kitware.com>2007-12-17 15:12:19 (GMT)
commit99d57b3c8cc84f40dee02036cc6c3e12510aa08c (patch)
tree72a6b3ec6c168b2df1aba10b9c29e7e2989685a1 /Source
parentff8d2a664720e1b48a59e34ac30fd3a9dd76f2bc (diff)
downloadCMake-99d57b3c8cc84f40dee02036cc6c3e12510aa08c.zip
CMake-99d57b3c8cc84f40dee02036cc6c3e12510aa08c.tar.gz
CMake-99d57b3c8cc84f40dee02036cc6c3e12510aa08c.tar.bz2
ENH: Added cmSourceFile::GetLocation method to get a read-only reference to the Location ivar. This partially addresses issue #6137.
Diffstat (limited to 'Source')
-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;