paludis  Version 2.6.0
broken_linkage_finder.hh
1 /* vim: set sw=4 sts=4 et foldmethod=syntax : */
2 
3 /*
4  * Copyright (c) 2007 David Leverton
5  *
6  * This file is part of the Paludis package manager. Paludis is free software;
7  * you can redistribute it and/or modify it under the terms of the GNU General
8  * Public License version 2, as published by the Free Software Foundation.
9  *
10  * Paludis is distributed in the hope that it will be useful, but WITHOUT ANY
11  * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
12  * FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
13  * details.
14  *
15  * You should have received a copy of the GNU General Public License along with
16  * this program; if not, write to the Free Software Foundation, Inc., 59 Temple
17  * Place, Suite 330, Boston, MA 02111-1307 USA
18  */
19 
20 #ifndef PALUDIS_GUARD_PALUDIS_BROKEN_LINKAGE_FINDER_HH
21 #define PALUDIS_GUARD_PALUDIS_BROKEN_LINKAGE_FINDER_HH
22 
24 #include <paludis/util/fs_path-fwd.hh>
25 #include <paludis/util/pimp.hh>
27 #include <paludis/util/wrapped_forward_iterator-fwd.hh>
28 
31 
32 #include <memory>
33 
34 namespace paludis
35 {
37  {
38  private:
40 
41  public:
42  BrokenLinkageFinder(const Environment *, const std::shared_ptr<const Sequence<std::string>> &);
44 
45  BrokenLinkageFinder(const BrokenLinkageFinder &) = delete;
46  BrokenLinkageFinder & operator= (const BrokenLinkageFinder &) = delete;
47 
48  struct BrokenPackageConstIteratorTag;
49  typedef WrappedForwardIterator<BrokenPackageConstIteratorTag,
50  const std::shared_ptr<const PackageID>
52  BrokenPackageConstIterator begin_broken_packages() const PALUDIS_ATTRIBUTE((warn_unused_result));
53  BrokenPackageConstIterator end_broken_packages() const PALUDIS_ATTRIBUTE((warn_unused_result));
54 
55  struct BrokenFileConstIteratorTag;
57  BrokenFileConstIterator begin_broken_files(const std::shared_ptr<const PackageID> &)
58  const PALUDIS_ATTRIBUTE((warn_unused_result));
59  BrokenFileConstIterator end_broken_files(const std::shared_ptr<const PackageID> &)
60  const PALUDIS_ATTRIBUTE((warn_unused_result));
61 
62  struct MissingRequirementConstIteratorTag;
64  MissingRequirementConstIterator begin_missing_requirements(
65  const std::shared_ptr<const PackageID> &, const FSPath &)
66  const PALUDIS_ATTRIBUTE((warn_unused_result));
67  MissingRequirementConstIterator end_missing_requirements(
68  const std::shared_ptr<const PackageID> &, const FSPath &)
69  const PALUDIS_ATTRIBUTE((warn_unused_result));
70  };
71 }
72 
73 #endif
74 
Definition: pimp.hh:51
Definition: about_metadata-fwd.hh:23
Definition: sequence-fwd.hh:32
Definition: environment.hh:200
Definition: broken_linkage_finder.hh:36
Definition: wrapped_forward_iterator-fwd.hh:26
Definition: fs_path.hh:33
#define PALUDIS_ATTRIBUTE(x)
Definition: attributes.hh:53
#define PALUDIS_VISIBLE
Definition: attributes.hh:59