Nix  2.93.0-dev
Lix: A modern, delicious implementation of the Nix package manager; unstable internal interfaces
Loading...
Searching...
No Matches
nix::NarAccessor Struct Reference
Inheritance diagram for nix::NarAccessor:
[legend]
Collaboration diagram for nix::NarAccessor:
[legend]

Public Member Functions

 NarAccessor (std::string &&_nar)
 
 NarAccessor (Source &source)
 
 NarAccessor (const std::string &listing, GetNarBytes getNarBytes)
 
nar_index::Entry * find (const Path &path)
 
nar_index::Entry & get (const Path &path)
 
kj::Promise< Result< Stat > > stat (const Path &path) override
 
kj::Promise< Result< StringSet > > readDirectory (const Path &path) override
 
kj::Promise< Result< std::string > > readFile (const Path &path, bool requireValidPath=true) override
 
kj::Promise< Result< std::string > > readLink (const Path &path) override
 

Public Attributes

std::optional< const std::string > nar
 
nar_index::Entry root
 
GetNarBytes getNarBytes
 

Additional Inherited Members

- Public Types inherited from nix::FSAccessor
enum  Type { tMissing , tRegular , tSymlink , tDirectory }
 

Member Function Documentation

◆ readDirectory()

kj::Promise< Result< StringSet > > nix::NarAccessor::readDirectory ( const Path & path)
inlineoverridevirtual

Implements nix::FSAccessor.

◆ readFile()

kj::Promise< Result< std::string > > nix::NarAccessor::readFile ( const Path & path,
bool requireValidPath = true )
inlineoverridevirtual

Read a file inside the store.

If requireValidPath is set to true (the default), the path must be inside a valid store path, otherwise it just needs to be physically present (but not necessarily properly registered)

Implements nix::FSAccessor.

◆ readLink()

kj::Promise< Result< std::string > > nix::NarAccessor::readLink ( const Path & path)
inlineoverridevirtual

Implements nix::FSAccessor.

◆ stat()

kj::Promise< Result< Stat > > nix::NarAccessor::stat ( const Path & path)
inlineoverridevirtual

Implements nix::FSAccessor.


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