The Pedigree Project 0.1
Public Member Functions | Private Types | Private Member Functions | Private Attributes | List of all members
VfsNodeReference Class Reference
+ Collaboration diagram for VfsNodeReference:

Public Member Functions

 VfsNodeReference (Directory::ChildLease &child)
 
 VfsNodeReference (VfsNodeReference &&other) noexcept
 
VfsNodeReference & operator= (VfsNodeReference &&other) noexcept
 
bool retain (File *node, Filesystem *backing)
 
bool retainAnonymous (File *node)
 
void reset ()
 
File * get () const
 

Private Types

enum class  Ownership { Borrowed , Tracked , Virtual }
 

Private Member Functions

 VfsNodeReference (const VfsNodeReference &)=delete
 
VfsNodeReference & operator= (const VfsNodeReference &)=delete
 

Private Attributes

File * m_Node = nullptr
 
Ownership m_Ownership = Ownership::Borrowed
 

Detailed Description

Definition at line 12 of file MountView-internal.h.

Member Enumeration Documentation

◆ Ownership

enum class VfsNodeReference::Ownership
strongprivate

Definition at line 29 of file MountView-internal.h.

Constructor & Destructor Documentation

◆ VfsNodeReference() [1/2]

VfsNodeReference::VfsNodeReference ( Directory::ChildLease &  child)
explicit

Definition at line 12 of file MountView.cc.

◆ VfsNodeReference() [2/2]

VfsNodeReference::VfsNodeReference ( VfsNodeReference &&  other)
noexcept

Definition at line 15 of file MountView.cc.

◆ ~VfsNodeReference()

VfsNodeReference::~VfsNodeReference ( )

Definition at line 30 of file MountView.cc.

Member Function Documentation

◆ get()

File * VfsNodeReference::get ( ) const
inline

Definition at line 22 of file MountView-internal.h.

◆ operator=()

VfsNodeReference & VfsNodeReference::operator= ( VfsNodeReference &&  other)
noexcept

Definition at line 20 of file MountView.cc.

◆ reset()

void VfsNodeReference::reset ( )

Definition at line 33 of file MountView.cc.

◆ retain()

bool VfsNodeReference::retain ( File *  node,
Filesystem *  backing 
)

Definition at line 51 of file MountView.cc.

◆ retainAnonymous()

bool VfsNodeReference::retainAnonymous ( File *  node)

Definition at line 63 of file MountView.cc.

Member Data Documentation

◆ m_Node

File* VfsNodeReference::m_Node = nullptr
private

Definition at line 30 of file MountView-internal.h.

◆ m_Ownership

Ownership VfsNodeReference::m_Ownership = Ownership::Borrowed
private

Definition at line 31 of file MountView-internal.h.


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