libzypp: zypp::filesystem::DevInoCache Class Reference

libzypp 17.38.11

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.

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

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:

- zypp-core/fs/PathInfo.h