diff options
author | David Kalnischkies <david@kalnischkies.de> | 2014-11-07 18:18:14 +0100 |
---|---|---|
committer | David Kalnischkies <david@kalnischkies.de> | 2014-11-08 14:29:25 +0100 |
commit | fa5404ab01bdf06eaf147d9f133139e6c89b906a (patch) | |
tree | 431e763fc49e892b7c59286fc2b80102cd8ebfff /apt-pkg/contrib/configuration.h | |
parent | 02e20767719873fa8f1919bd0e7a75f63e00c484 (diff) |
explicit overload methods instead of adding parameters
Adding a new parameter (with a default) is an ABI break, but you can
overload a method, which is "just" an API break for everyone doing
references to this method (aka: nobody).
Git-Dch: Ignore
Diffstat (limited to 'apt-pkg/contrib/configuration.h')
-rw-r--r-- | apt-pkg/contrib/configuration.h | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/apt-pkg/contrib/configuration.h b/apt-pkg/contrib/configuration.h index 2ecea8bee..8d7d51037 100644 --- a/apt-pkg/contrib/configuration.h +++ b/apt-pkg/contrib/configuration.h @@ -84,8 +84,16 @@ class Configuration * * \param Name of the parent node * \param Default list of values separated by commas */ +#if APT_PKG_ABI >= 413 std::vector<std::string> FindVector(const char *Name, std::string const &Default = "") const; std::vector<std::string> FindVector(std::string const &Name, std::string const &Default = "") const { return FindVector(Name.c_str(), Default); }; +#else + std::vector<std::string> FindVector(const char *Name, std::string const &Default) const; + std::vector<std::string> FindVector(std::string const &Name, std::string const &Default) const { return FindVector(Name.c_str(), Default); }; + std::vector<std::string> FindVector(const char *Name) const; + std::vector<std::string> FindVector(std::string const &Name) const { return FindVector(Name.c_str(), ""); }; +#endif + int FindI(const char *Name,int const &Default = 0) const; int FindI(std::string const &Name,int const &Default = 0) const {return FindI(Name.c_str(),Default);}; bool FindB(const char *Name,bool const &Default = false) const; |