40 #ifndef LIMAL_PATH_PATHNAME_HPP
41 #define LIMAL_PATH_PATHNAME_HPP
44 #include <blocxx/String.hpp>
45 #include <blocxx/List.hpp>
50 namespace LIMAL_NAMESPACE
66 typedef blocxx::List<blocxx::String>
List;
95 PathName(
const blocxx::String &name);
133 blocxx::String toString()
const;
157 blocxx::String prefix()
const;
172 bool absolute()
const;
180 bool relative()
const;
224 blocxx::String baseName()
const;
240 static blocxx::String baseName(
const PathName &path);
349 PathName extend(
const blocxx::String &ext)
const;
372 const blocxx::String &ext);
382 bool equal(
const PathName &rpath)
const;
391 static bool equal(
const PathName &lpath,
406 void assign(
const blocxx::String &path);
434 return PathName::equal( lname, rname);
442 return !PathName::equal( lname, rname);
450 return PathName::cat( lname, rname);
455 extern std::ostream &
456 operator<<(std::ostream &ostr,
const PathName &path);
463 #endif // LIMAL_PATH_PATHNAME_HPP