34 #include <boost/algorithm/string.hpp>
38 namespace identifier {
42 std::string _corrected_db;
49 virtual std::string getSQLPath()
const
54 const std::string &getPath()
const;
56 const std::string &getSchemaName()
const
61 const std::string &getCompareWithSchemaName()
const
66 const std::string &getCatalogName()
const;
68 virtual bool isValid()
const;
70 inline virtual bool isSystem()
const
75 bool compare(
const std::string &arg)
const;
76 bool compare(
const Schema&)
const;
78 friend bool operator<(
const Schema& left,
const Schema& right)
80 return boost::ilexicographical_compare(left.getSchemaName(), right.getSchemaName());
83 friend bool operator==(
const Schema& left,
const Schema& right)
85 return boost::iequals(left._corrected_db, right._corrected_db);
89 std::ostream& operator<<(std::ostream&,
const Schema&);