Nix 2.93.3
Lix: A modern, delicious implementation of the Nix package manager; unstable internal interfaces
Loading...
Searching...
No Matches
nar-accessor.hh File Reference
#include "lix/libstore/fs-accessor.hh"
#include "lix/libutil/archive.hh"
#include "lix/libutil/json-fwd.hh"
#include "lix/libutil/ref.hh"
#include <functional>

Go to the source code of this file.

Typedefs

typedef std::function< std::string(uint64_t, uint64_t)> nix::GetNarBytes

Functions

ref< FSAccessornix::makeNarAccessor (std::string &&nar)
ref< FSAccessornix::makeNarAccessor (Source &source)
ref< FSAccessornix::makeLazyNarAccessor (const std::string &listing, GetNarBytes getNarBytes)
kj::Promise< Result< JSON > > nix::listNar (ref< FSAccessor > accessor, const Path &path, bool recurse)
JSON nix::listNar (const nar_index::Entry &nar)

Typedef Documentation

◆ GetNarBytes

typedef std::function<std::string(uint64_t, uint64_t)> nix::GetNarBytes

Create a NAR accessor from a NAR listing (in the format produced by listNar()). The callback getNarBytes(offset, length) is used by the readFile() method of the accessor to get the contents of files inside the NAR.

Function Documentation

◆ listNar()

kj::Promise< Result< JSON > > nix::listNar ( ref< FSAccessor > accessor,
const Path & path,
bool recurse )

Write a JSON representation of the contents of a NAR (except file contents).

◆ makeNarAccessor()

ref< FSAccessor > nix::makeNarAccessor ( std::string && nar)

Return an object that provides access to the contents of a NAR file.