libzypp  17.38.7
filesystem.h
Go to the documentation of this file.
1 /*---------------------------------------------------------------------
2 | ____ _ __ __ ___ |
3 | |__ / \ / / . \ . \ |
4 | / / \ V /| _/ _/ |
5 | / /__ | | | | | | |
6 | /_____||_| |_| |_| |
7 | |
8 ----------------------------------------------------------------------/
9 *
10 * This file contains private API, this might break at any time between releases.
11 * You have been warned!
12 *
13 */
14 #ifndef ZYPP_NG_SAT_NAMESPACES_FILESYSTEM_H_INCLUDED
15 #define ZYPP_NG_SAT_NAMESPACES_FILESYSTEM_H_INCLUDED
16 
18 #include <set>
19 #include <string>
20 #include <optional>
21 
22 namespace zyppng::sat::namespaces {
23 
29  public:
30  FilesystemNamespaceProvider() = default;
31 
32  const std::set<std::string> &requiredFilesystems() const;
33 
34  // NamespaceProvider interface
35  void checkDirty( Pool & pool ) override;
36  bool isSatisfied( detail::IdType value) const override;
37 
38  private:
40  mutable std::optional<std::set<std::string> > _requiredFilesystems;
41  };
42 
43 } // namespace zyppng::sat
44 
45 #endif
Orchestrator for a libsolv pool instance.
Definition: pool.h:36
const std::set< std::string > & requiredFilesystems() const
Definition: filesystem.cc:43
zypp::sat::detail::IdType IdType
Definition: poolconstants.h:43
bool isSatisfied(detail::IdType value) const override
Check if a specific value satisfies this namespace condition.
Definition: filesystem.cc:28
Abstract base class for logic providing data to a libsolv namespace.
std::optional< std::set< std::string > > _requiredFilesystems
filesystems mentioned in /etc/sysconfig/storage, mutable for lazy init
Definition: filesystem.h:40
void checkDirty(Pool &pool) override
checkDirty
Definition: filesystem.cc:34
Provider for NAMESPACE_FILESYSTEM.
Definition: filesystem.h:28