The Pedigree Project 0.1
Public Member Functions | Public Attributes | List of all members
VfsMountView::State Struct Reference
+ Collaboration diagram for VfsMountView::State:

Public Member Functions

 State (VfsMountView &owner)
 
VfsAttachmentRow * find (uint64_t id) const
 
VfsAttachmentRow * at (const VfsPath &path) const
 
bool contains (const FilesystemPathRef &path) const
 
VfsPath * nodePath (const FilesystemPathRef &reference) const
 
VfsPath * path (const FilesystemPathRef &reference) const
 
bool makePath (const VfsAttachmentRef &attachment, File *node, FilesystemPathRef &result)
 
bool context (const FilesystemContextRef &reference, VfsFilesystemContext *&result) const
 
bool createContext (const VfsFilesystemContext *parent, FilesystemContextOwner &result)
 
bool cross (const FilesystemPathRef &path, FilesystemPathRef &result)
 
bool parent (const FilesystemPathRef &path, FilesystemPathRef &result, const FilesystemPathRef &boundary=FilesystemPathRef())
 
bool beneath (const FilesystemPathRef &descendant, const FilesystemPathRef &ancestor)
 
bool format (const FilesystemContextSnapshot &context, const FilesystemPathRef &path, String &result, const VFS::NamespaceMutation &writer)
 
bool resolve (const FilesystemContextSnapshot &context, const FilesystemPathRef &start, const String &pathname, const ResolveOptions &options, FilesystemPathRef &result, const VFS::NamespaceMutation *writer=nullptr)
 
bool follow (const FilesystemContextSnapshot &context, const FilesystemPathRef &selected, const ResolveOptions &options, FilesystemPathRef &result, size_t &links)
 
bool walk (const FilesystemContextSnapshot &context, const FilesystemPathRef &start, const String &pathname, const ResolveOptions &options, FilesystemPathRef &result, size_t &links)
 
bool attach (const FilesystemPathRef &covered, VFS::FilesystemPin &&pin, const VFS::NamespaceMutation &writer, BackingOwnership ownership)
 
void reapDetached ()
 

Public Attributes

VfsMountView & view
 
Mutex graph
 
Atomic< size_t > anonymousPaths {0}
 
VfsAttachmentRow * attachments = nullptr
 
VfsContextRow * contexts = nullptr
 
size_t contextCount = 0
 
uint64_t topology = 1
 
uint64_t rootId = 0
 
uint64_t nextId = 1
 

Detailed Description

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

Constructor & Destructor Documentation

◆ State()

VfsMountView::State::State ( VfsMountView &  owner)
inlineexplicit

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

◆ ~State()

VfsMountView::State::~State ( )

Definition at line 102 of file MountView.cc.

Member Function Documentation

◆ at()

VfsAttachmentRow * VfsMountView::State::at ( const VfsPath &  path) const

Definition at line 122 of file MountView.cc.

◆ attach()

bool VfsMountView::State::attach ( const FilesystemPathRef &  covered,
VFS::FilesystemPin &&  pin,
const VFS::NamespaceMutation &  writer,
BackingOwnership  ownership 
)

Definition at line 6 of file MountView-mounts.cc.

◆ beneath()

bool VfsMountView::State::beneath ( const FilesystemPathRef &  descendant,
const FilesystemPathRef &  ancestor 
)

Definition at line 97 of file MountView-path.cc.

◆ contains()

bool VfsMountView::State::contains ( const FilesystemPathRef &  path) const

Definition at line 139 of file MountView.cc.

◆ context()

bool VfsMountView::State::context ( const FilesystemContextRef &  reference,
VfsFilesystemContext *&  result 
) const

Definition at line 154 of file MountView.cc.

◆ createContext()

bool VfsMountView::State::createContext ( const VfsFilesystemContext *  parent,
FilesystemContextOwner &  result 
)

Definition at line 240 of file MountView.cc.

◆ cross()

bool VfsMountView::State::cross ( const FilesystemPathRef &  path,
FilesystemPathRef &  result 
)

Definition at line 40 of file MountView-path.cc.

◆ find()

VfsAttachmentRow * VfsMountView::State::find ( uint64_t  id) const

Definition at line 116 of file MountView.cc.

◆ follow()

bool VfsMountView::State::follow ( const FilesystemContextSnapshot &  context,
const FilesystemPathRef &  selected,
const ResolveOptions &  options,
FilesystemPathRef &  result,
size_t &  links 
)

Definition at line 112 of file MountView-path.cc.

◆ format()

bool VfsMountView::State::format ( const FilesystemContextSnapshot &  context,
const FilesystemPathRef &  path,
String &  result,
const VFS::NamespaceMutation &  writer 
)

Definition at line 6 of file MountView-report.cc.

◆ makePath()

bool VfsMountView::State::makePath ( const VfsAttachmentRef &  attachment,
File *  node,
FilesystemPathRef &  result 
)

Definition at line 164 of file MountView.cc.

◆ nodePath()

VfsPath * VfsMountView::State::nodePath ( const FilesystemPathRef &  reference) const

Definition at line 129 of file MountView.cc.

◆ parent()

bool VfsMountView::State::parent ( const FilesystemPathRef &  path,
FilesystemPathRef &  result,
const FilesystemPathRef &  boundary = FilesystemPathRef() 
)

Definition at line 57 of file MountView-path.cc.

◆ path()

VfsPath * VfsMountView::State::path ( const FilesystemPathRef &  reference) const

Definition at line 135 of file MountView.cc.

◆ reapDetached()

void VfsMountView::State::reapDetached ( )

Definition at line 97 of file MountView-mounts.cc.

◆ resolve()

bool VfsMountView::State::resolve ( const FilesystemContextSnapshot &  context,
const FilesystemPathRef &  start,
const String &  pathname,
const ResolveOptions &  options,
FilesystemPathRef &  result,
const VFS::NamespaceMutation *  writer = nullptr 
)

Definition at line 278 of file MountView-path.cc.

◆ walk()

bool VfsMountView::State::walk ( const FilesystemContextSnapshot &  context,
const FilesystemPathRef &  start,
const String &  pathname,
const ResolveOptions &  options,
FilesystemPathRef &  result,
size_t &  links 
)

Definition at line 119 of file MountView-path.cc.

Member Data Documentation

◆ anonymousPaths

Atomic<size_t> VfsMountView::State::anonymousPaths {0}

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

◆ attachments

VfsAttachmentRow* VfsMountView::State::attachments = nullptr

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

◆ contextCount

size_t VfsMountView::State::contextCount = 0

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

◆ contexts

VfsContextRow* VfsMountView::State::contexts = nullptr

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

◆ graph

Mutex VfsMountView::State::graph

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

◆ nextId

uint64_t VfsMountView::State::nextId = 1

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

◆ rootId

uint64_t VfsMountView::State::rootId = 0

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

◆ topology

uint64_t VfsMountView::State::topology = 1

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

◆ view

VfsMountView& VfsMountView::State::view

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


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