| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071 |
- /*=========================================================================
- Program: CMake - Cross-Platform Makefile Generator
- Module: $RCSfile$
- Language: C++
- Date: $Date$
- Version: $Revision$
- Copyright (c) 2002 Kitware, Inc., Insight Consortium. All rights reserved.
- See Copyright.txt or http://www.cmake.org/HTML/Copyright.html for details.
- This software is distributed WITHOUT ANY WARRANTY; without even
- the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
- PURPOSE. See the above copyright notices for more information.
- =========================================================================*/
- #ifndef cmListFileCache_h
- #define cmListFileCache_h
- #include "cmStandardIncludes.h"
- /** \class cmListFileCache
- * \brief A class to cache list file contents.
- *
- * cmListFileCache is a class used to cache the contents of parsed
- * cmake list files.
- */
- struct cmListFileArgument
- {
- cmListFileArgument(): Value(), Quoted(false), FilePath(0), Line(0) {}
- cmListFileArgument(const cmListFileArgument& r):
- Value(r.Value), Quoted(r.Quoted), FilePath(r.FilePath), Line(r.Line) {}
- cmListFileArgument(const std::string& v, bool q, const char* file,
- long line): Value(v), Quoted(q),
- FilePath(file), Line(line) {}
- bool operator == (const cmListFileArgument& r) const
- {
- return (this->Value == r.Value) && (this->Quoted == r.Quoted);
- }
- bool operator != (const cmListFileArgument& r) const
- {
- return !(*this == r);
- }
- std::string Value;
- bool Quoted;
- const char* FilePath;
- long Line;
- };
- struct cmListFileFunction
- {
- std::string Name;
- std::vector<cmListFileArgument> Arguments;
- std::string FilePath;
- long Line;
- };
- struct cmListFile
- {
- cmListFile()
- :ModifiedTime(0)
- {
- }
- bool ParseFile(const char* path, bool requireProjectCommand);
- long int ModifiedTime;
- std::vector<cmListFileFunction> Functions;
- };
- #endif
|