diff options
author | 2011-01-09 10:23:12 +0000 | |
---|---|---|
committer | 2011-01-09 10:23:12 +0000 | |
commit | 7a2c9e974666881f44406c88189ae546a67ff0b7 (patch) | |
tree | f6846da02bf779a262f58e5042f3fa1bbf7415d3 /paludis/environments/paludis | |
parent | 7f7c79fcc67df4fae498ca943e36592d3f7a3ad2 (diff) | |
download | paludis-7a2c9e974666881f44406c88189ae546a67ff0b7.tar.gz paludis-7a2c9e974666881f44406c88189ae546a67ff0b7.tar.xz |
Rework Pimp to avoid ImpPtr ickiness
Fixes: ticket:1070
Diffstat (limited to 'paludis/environments/paludis')
20 files changed, 62 insertions, 48 deletions
diff --git a/paludis/environments/paludis/keywords_conf.cc b/paludis/environments/paludis/keywords_conf.cc index 3586b2126..4837cfb12 100644 --- a/paludis/environments/paludis/keywords_conf.cc +++ b/paludis/environments/paludis/keywords_conf.cc @@ -74,7 +74,7 @@ namespace paludis } KeywordsConf::KeywordsConf(const PaludisEnvironment * const e) : - Pimp<KeywordsConf>(e) + _imp(e) { } diff --git a/paludis/environments/paludis/keywords_conf.hh b/paludis/environments/paludis/keywords_conf.hh index 08cdb2a07..fe8fde338 100644 --- a/paludis/environments/paludis/keywords_conf.hh +++ b/paludis/environments/paludis/keywords_conf.hh @@ -1,7 +1,7 @@ /* vim: set sw=4 sts=4 et foldmethod=syntax : */ /* - * Copyright (c) 2007, 2008, 2010 Ciaran McCreesh + * Copyright (c) 2007, 2008, 2010, 2011 Ciaran McCreesh * * This file is part of the Paludis package manager. Paludis is free software; * you can redistribute it and/or modify it under the terms of the GNU General @@ -37,9 +37,11 @@ namespace paludis * \ingroup grppaludisenvironment * \nosubgrouping */ - class KeywordsConf : - private Pimp<KeywordsConf> + class KeywordsConf { + private: + Pimp<KeywordsConf> _imp; + public: ///\name Basic operations ///\{ diff --git a/paludis/environments/paludis/licenses_conf.cc b/paludis/environments/paludis/licenses_conf.cc index 8e6d925dc..7e5829278 100644 --- a/paludis/environments/paludis/licenses_conf.cc +++ b/paludis/environments/paludis/licenses_conf.cc @@ -73,7 +73,7 @@ namespace paludis } LicensesConf::LicensesConf(const PaludisEnvironment * const e) : - Pimp<LicensesConf>(e) + _imp(e) { } diff --git a/paludis/environments/paludis/licenses_conf.hh b/paludis/environments/paludis/licenses_conf.hh index 863fc3a75..8720bf36d 100644 --- a/paludis/environments/paludis/licenses_conf.hh +++ b/paludis/environments/paludis/licenses_conf.hh @@ -1,7 +1,7 @@ /* vim: set sw=4 sts=4 et foldmethod=syntax : */ /* - * Copyright (c) 2007, 2010 Ciaran McCreesh + * Copyright (c) 2007, 2010, 2011 Ciaran McCreesh * * This file is part of the Paludis package manager. Paludis is free software; * you can redistribute it and/or modify it under the terms of the GNU General @@ -37,9 +37,11 @@ namespace paludis * \ingroup grppaludisenvironment * \nosubgrouping */ - class LicensesConf : - private Pimp<LicensesConf> + class LicensesConf { + private: + Pimp<LicensesConf> _imp; + public: ///\name Basic operations ///\{ diff --git a/paludis/environments/paludis/mirrors_conf.cc b/paludis/environments/paludis/mirrors_conf.cc index 7d20df103..0ff5a2480 100644 --- a/paludis/environments/paludis/mirrors_conf.cc +++ b/paludis/environments/paludis/mirrors_conf.cc @@ -1,7 +1,7 @@ /* vim: set sw=4 sts=4 et foldmethod=syntax : */ /* - * Copyright (c) 2007, 2008, 2009, 2010 Ciaran McCreesh + * Copyright (c) 2007, 2008, 2009, 2010, 2011 Ciaran McCreesh * * This file is part of the Paludis package manager. Paludis is free software; * you can redistribute it and/or modify it under the terms of the GNU General @@ -56,7 +56,7 @@ namespace paludis } MirrorsConf::MirrorsConf(const PaludisEnvironment * const e) : - Pimp<MirrorsConf>(e) + _imp(e) { } diff --git a/paludis/environments/paludis/mirrors_conf.hh b/paludis/environments/paludis/mirrors_conf.hh index 89fc86b62..325df5be4 100644 --- a/paludis/environments/paludis/mirrors_conf.hh +++ b/paludis/environments/paludis/mirrors_conf.hh @@ -1,7 +1,7 @@ /* vim: set sw=4 sts=4 et foldmethod=syntax : */ /* - * Copyright (c) 2007, 2008, 2010 Ciaran McCreesh + * Copyright (c) 2007, 2008, 2010, 2011 Ciaran McCreesh * * This file is part of the Paludis package manager. Paludis is free software; * you can redistribute it and/or modify it under the terms of the GNU General @@ -37,9 +37,11 @@ namespace paludis * \ingroup grppaludisenvironment * \nosubgrouping */ - class MirrorsConf : - private Pimp<MirrorsConf> + class MirrorsConf { + private: + Pimp<MirrorsConf> _imp; + public: ///\name Basic operations ///\{ diff --git a/paludis/environments/paludis/output_conf.cc b/paludis/environments/paludis/output_conf.cc index 1e760e173..a8ad2cbbb 100644 --- a/paludis/environments/paludis/output_conf.cc +++ b/paludis/environments/paludis/output_conf.cc @@ -114,7 +114,7 @@ namespace paludis } OutputConf::OutputConf(const PaludisEnvironment * const e) : - Pimp<OutputConf>(e) + _imp(e) { } diff --git a/paludis/environments/paludis/output_conf.hh b/paludis/environments/paludis/output_conf.hh index 684b7a472..bb07ba657 100644 --- a/paludis/environments/paludis/output_conf.hh +++ b/paludis/environments/paludis/output_conf.hh @@ -1,7 +1,7 @@ /* vim: set sw=4 sts=4 et foldmethod=syntax : */ /* - * Copyright (c) 2009, 2010 Ciaran McCreesh + * Copyright (c) 2009, 2010, 2011 Ciaran McCreesh * * This file is part of the Paludis package manager. Paludis is free software; * you can redistribute it and/or modify it under the terms of the GNU General @@ -32,9 +32,11 @@ namespace paludis namespace paludis_environment { - class OutputConf : - private Pimp<OutputConf> + class OutputConf { + private: + Pimp<OutputConf> _imp; + public: ///\name Basic operations ///\{ diff --git a/paludis/environments/paludis/package_mask_conf.cc b/paludis/environments/paludis/package_mask_conf.cc index 763801199..4814e0edc 100644 --- a/paludis/environments/paludis/package_mask_conf.cc +++ b/paludis/environments/paludis/package_mask_conf.cc @@ -64,7 +64,7 @@ namespace paludis } PackageMaskConf::PackageMaskConf(const PaludisEnvironment * const e) : - Pimp<PackageMaskConf>(e) + _imp(e) { } diff --git a/paludis/environments/paludis/package_mask_conf.hh b/paludis/environments/paludis/package_mask_conf.hh index f8e9ce0c4..8cd6568d8 100644 --- a/paludis/environments/paludis/package_mask_conf.hh +++ b/paludis/environments/paludis/package_mask_conf.hh @@ -1,7 +1,7 @@ /* vim: set sw=4 sts=4 et foldmethod=syntax : */ /* - * Copyright (c) 2007, 2010 Ciaran McCreesh + * Copyright (c) 2007, 2010, 2011 Ciaran McCreesh * * This file is part of the Paludis package manager. Paludis is free software; * you can redistribute it and/or modify it under the terms of the GNU General @@ -38,9 +38,11 @@ namespace paludis * \ingroup grppaludisenvironment * \nosubgrouping */ - class PackageMaskConf : - private Pimp<PackageMaskConf> + class PackageMaskConf { + private: + Pimp<PackageMaskConf> _imp; + public: ///\name Basic operations ///\{ diff --git a/paludis/environments/paludis/paludis_config.cc b/paludis/environments/paludis/paludis_config.cc index ac8619ff5..d69ff6ed6 100644 --- a/paludis/environments/paludis/paludis_config.cc +++ b/paludis/environments/paludis/paludis_config.cc @@ -1,7 +1,7 @@ /* vim: set sw=4 sts=4 et foldmethod=syntax : */ /* - * Copyright (c) 2006, 2007, 2008, 2009, 2010 Ciaran McCreesh + * Copyright (c) 2006, 2007, 2008, 2009, 2010, 2011 Ciaran McCreesh * * This file is part of the Paludis package manager. Paludis is free software; * you can redistribute it and/or modify it under the terms of the GNU General @@ -393,7 +393,7 @@ PaludisConfigNoDirectoryError::PaludisConfigNoDirectoryError(const std::string & } PaludisConfig::PaludisConfig(PaludisEnvironment * const e, const std::string & suffix) : - Pimp<PaludisConfig>(e) + _imp(e) { using namespace std::placeholders; diff --git a/paludis/environments/paludis/paludis_config.hh b/paludis/environments/paludis/paludis_config.hh index 843f6f3f6..b88a7cb2b 100644 --- a/paludis/environments/paludis/paludis_config.hh +++ b/paludis/environments/paludis/paludis_config.hh @@ -1,7 +1,7 @@ /* vim: set sw=4 sts=4 et foldmethod=syntax : */ /* - * Copyright (c) 2006, 2007, 2008, 2009, 2010 Ciaran McCreesh + * Copyright (c) 2006, 2007, 2008, 2009, 2010, 2011 Ciaran McCreesh * * This file is part of the Paludis package manager. Paludis is free software; * you can redistribute it and/or modify it under the terms of the GNU General @@ -96,9 +96,11 @@ namespace paludis * \ingroup grppaludisconfig * \nosubgrouping */ - class PaludisConfig : - private Pimp<PaludisConfig> + class PaludisConfig { + private: + Pimp<PaludisConfig> _imp; + public: ///\name Basic operations ///\{ diff --git a/paludis/environments/paludis/paludis_environment.cc b/paludis/environments/paludis/paludis_environment.cc index 00919d83a..ce30f7b33 100644 --- a/paludis/environments/paludis/paludis_environment.cc +++ b/paludis/environments/paludis/paludis_environment.cc @@ -1,7 +1,7 @@ /* vim: set sw=4 sts=4 et foldmethod=syntax : */ /* - * Copyright (c) 2005, 2006, 2007, 2008, 2009, 2010 Ciaran McCreesh + * Copyright (c) 2005, 2006, 2007, 2008, 2009, 2010, 2011 Ciaran McCreesh * * This file is part of the Paludis package manager. Paludis is free software; * you can redistribute it and/or modify it under the terms of the GNU General @@ -150,8 +150,7 @@ namespace paludis } PaludisEnvironment::PaludisEnvironment(const std::string & s) : - Pimp<PaludisEnvironment>(this, std::shared_ptr<PaludisConfig>(std::make_shared<PaludisConfig>(this, s))), - _imp(Pimp<PaludisEnvironment>::_imp) + _imp(this, std::shared_ptr<PaludisConfig>(std::make_shared<PaludisConfig>(this, s))) { Context context("When loading paludis environment:"); diff --git a/paludis/environments/paludis/paludis_environment.hh b/paludis/environments/paludis/paludis_environment.hh index 7e45f01fb..8cbb899f6 100644 --- a/paludis/environments/paludis/paludis_environment.hh +++ b/paludis/environments/paludis/paludis_environment.hh @@ -1,7 +1,7 @@ /* vim: set sw=4 sts=4 et foldmethod=syntax : */ /* - * Copyright (c) 2005, 2006, 2007, 2008, 2009, 2010 Ciaran McCreesh + * Copyright (c) 2005, 2006, 2007, 2008, 2009, 2010, 2011 Ciaran McCreesh * * This file is part of the Paludis package manager. Paludis is free software; * you can redistribute it and/or modify it under the terms of the GNU General @@ -45,12 +45,10 @@ namespace paludis * \ingroup grppaludisenvironment */ class PALUDIS_VISIBLE PaludisEnvironment : - public EnvironmentImplementation, - private Pimp<PaludisEnvironment> + public EnvironmentImplementation { - private: - Pimp<PaludisEnvironment>::ImpPtr & _imp; + Pimp<PaludisEnvironment> _imp; protected: virtual void need_keys_added() const; diff --git a/paludis/environments/paludis/suggestions_conf.cc b/paludis/environments/paludis/suggestions_conf.cc index 226413d0c..fa9c313d0 100644 --- a/paludis/environments/paludis/suggestions_conf.cc +++ b/paludis/environments/paludis/suggestions_conf.cc @@ -115,7 +115,7 @@ namespace paludis } SuggestionsConf::SuggestionsConf(const PaludisEnvironment * const e) : - Pimp<SuggestionsConf>(e) + _imp(e) { } diff --git a/paludis/environments/paludis/suggestions_conf.hh b/paludis/environments/paludis/suggestions_conf.hh index 64cc9892c..64e03151b 100644 --- a/paludis/environments/paludis/suggestions_conf.hh +++ b/paludis/environments/paludis/suggestions_conf.hh @@ -1,7 +1,7 @@ /* vim: set sw=4 sts=4 et foldmethod=syntax : */ /* - * Copyright (c) 2010 Ciaran McCreesh + * Copyright (c) 2010, 2011 Ciaran McCreesh * * This file is part of the Paludis package manager. Paludis is free software; * you can redistribute it and/or modify it under the terms of the GNU General @@ -35,9 +35,11 @@ namespace paludis namespace paludis_environment { - class SuggestionsConf : - private Pimp<SuggestionsConf> + class SuggestionsConf { + private: + Pimp<SuggestionsConf> _imp; + public: ///\name Basic operations ///\{ diff --git a/paludis/environments/paludis/use_conf.cc b/paludis/environments/paludis/use_conf.cc index 8cf21b781..4a7009e25 100644 --- a/paludis/environments/paludis/use_conf.cc +++ b/paludis/environments/paludis/use_conf.cc @@ -1,7 +1,7 @@ /* vim: set sw=4 sts=4 et foldmethod=syntax : */ /* - * Copyright (c) 2007, 2008, 2009, 2010 Ciaran McCreesh + * Copyright (c) 2007, 2008, 2009, 2010, 2011 Ciaran McCreesh * * This file is part of the Paludis package manager. Paludis is free software; * you can redistribute it and/or modify it under the terms of the GNU General @@ -50,7 +50,7 @@ namespace paludis } UseConf::UseConf(const PaludisEnvironment * const e) : - Pimp<UseConf>(e) + _imp(e) { } diff --git a/paludis/environments/paludis/use_conf.hh b/paludis/environments/paludis/use_conf.hh index f945e4f29..2645611b9 100644 --- a/paludis/environments/paludis/use_conf.hh +++ b/paludis/environments/paludis/use_conf.hh @@ -1,7 +1,7 @@ /* vim: set sw=4 sts=4 et foldmethod=syntax : */ /* - * Copyright (c) 2007, 2008, 2009, 2010 Ciaran McCreesh + * Copyright (c) 2007, 2008, 2009, 2010, 2011 Ciaran McCreesh * * This file is part of the Paludis package manager. Paludis is free software; * you can redistribute it and/or modify it under the terms of the GNU General @@ -39,9 +39,11 @@ namespace paludis * \ingroup grppaludisenvironment * \nosubgrouping */ - class UseConf : - private Pimp<UseConf> + class UseConf { + private: + Pimp<UseConf> _imp; + public: ///\name Basic operations ///\{ diff --git a/paludis/environments/paludis/world.cc b/paludis/environments/paludis/world.cc index 2ffd2d1a1..ea3b90074 100644 --- a/paludis/environments/paludis/world.cc +++ b/paludis/environments/paludis/world.cc @@ -1,7 +1,7 @@ /* vim: set sw=4 sts=4 et foldmethod=syntax : */ /* - * Copyright (c) 2008, 2009, 2010 Ciaran McCreesh + * Copyright (c) 2008, 2009, 2010, 2011 Ciaran McCreesh * * This file is part of the Paludis package manager. Paludis is free software; * you can redistribute it and/or modify it under the terms of the GNU General @@ -52,7 +52,7 @@ namespace paludis } World::World(const Environment * const e, const std::shared_ptr<const FSPath> & f) : - Pimp<World>(e, f) + _imp(e, f) { } diff --git a/paludis/environments/paludis/world.hh b/paludis/environments/paludis/world.hh index 9a0a27b99..89e5e7c48 100644 --- a/paludis/environments/paludis/world.hh +++ b/paludis/environments/paludis/world.hh @@ -1,7 +1,7 @@ /* vim: set sw=4 sts=4 et foldmethod=syntax : */ /* - * Copyright (c) 2008, 2009, 2010 Ciaran McCreesh + * Copyright (c) 2008, 2009, 2010, 2011 Ciaran McCreesh * * This file is part of the Paludis package manager. Paludis is free software; * you can redistribute it and/or modify it under the terms of the GNU General @@ -32,10 +32,11 @@ namespace paludis { namespace paludis_environment { - class PALUDIS_VISIBLE World : - private Pimp<World> + class PALUDIS_VISIBLE World { private: + Pimp<World> _imp; + bool _add_string_to_world(const std::string &) const; bool _remove_string_from_world(const std::string &) const; |