GME
13
|
00001 00023 #pragma once 00024 00025 #include <string> 00026 #include <apr_pools.h> 00027 struct svn_error_t; 00028 00032 class Path 00033 { 00034 private: 00035 // the path to be stored 00036 std::string m_path; 00037 apr_pool_t* m_pool; 00038 00039 svn_error_t *m_error_occured; 00040 00046 void init(const char * pi_path, apr_pool_t* pool); 00047 00048 public: 00056 Path(const std::string & pi_path, apr_pool_t* pool); 00057 00064 Path(const char * pi_path, apr_pool_t* pool); 00065 00071 Path(const Path & pi_path); 00072 00076 Path& operator=(const Path&); 00077 00081 const std::string & 00082 path() const; 00083 00087 const char * 00088 c_str() const; 00089 00090 svn_error_t * 00091 error_occured() const; 00092 00099 static bool isValid(const char *path); 00100 };