libzypp 17.37.17
zypp::filesystem::DevInoCache Class Reference

Simple cache remembering device/inode to detect hardlinks. More...

#include <zypp-core/fs/PathInfo.h>

Public Member Functions

 DevInoCache ()
 Ctor.
void clear ()
 Clear cache.
bool insert (const dev_t &dev_r, const ino_t &ino_r)
 Remember dev/ino.

Private Attributes

std::map< dev_t, std::set< ino_t > > _devino

Detailed Description

Simple cache remembering device/inode to detect hardlinks.

for ( all files ) {
if ( trace.insert( file.device, file.inode ) ) {
// 1st occurance of file
}
// else: hardlink; already counted this device/inode
}
}
bool insert(const dev_t &dev_r, const ino_t &ino_r)
Remember dev/ino.
Definition PathInfo.h:206

Definition at line 192 of file PathInfo.h.

Constructor & Destructor Documentation

◆ DevInoCache()

zypp::filesystem::DevInoCache::DevInoCache ( )
inline

Ctor.

Definition at line 196 of file PathInfo.h.

Member Function Documentation

◆ clear()

void zypp::filesystem::DevInoCache::clear ( )
inline

Clear cache.

Definition at line 199 of file PathInfo.h.

◆ insert()

bool zypp::filesystem::DevInoCache::insert ( const dev_t & dev_r,
const ino_t & ino_r )
inline

Remember dev/ino.

\Return true if it's inserted the first time, false if alredy present in cache (a hardlink to a previously remembered file).

Definition at line 206 of file PathInfo.h.

Member Data Documentation

◆ _devino

std::map<dev_t,std::set<ino_t> > zypp::filesystem::DevInoCache::_devino
private

Definition at line 211 of file PathInfo.h.


The documentation for this class was generated from the following file: