Nix 2.93.3
Lix: A modern, delicious implementation of the Nix package manager; unstable internal interfaces
Loading...
Searching...
No Matches
content-address.hh File Reference
#include <variant>
#include "lix/libutil/hash.hh"
#include "lix/libstore/path.hh"
#include "lix/libutil/comparator.hh"
#include "lix/libutil/variant-wrapper.hh"

Go to the source code of this file.

Classes

struct  nix::TextIngestionMethod
struct  nix::ContentAddressMethod
struct  nix::ContentAddress
struct  nix::StoreReferences
struct  nix::TextInfo
struct  nix::FixedOutputInfo
struct  nix::ContentAddressWithReferences

Enumerations

enum struct  nix::FileIngestionMethod : uint8_t { Flat = false , Recursive = true }

Functions

std::string nix::makeFileIngestionPrefix (FileIngestionMethod m)
std::string nix::renderContentAddress (std::optional< ContentAddress > ca)

Enumeration Type Documentation

◆ FileIngestionMethod

enum struct nix::FileIngestionMethod : uint8_t
strong

An enumeration of the main ways we can serialize file system objects.

Enumerator
Flat 

Flat-file hashing. Directly ingest the contents of a single file

Recursive 

Recursive (or NAR) hashing. Serializes the file-system object in Nix Archive format and ingest that

Function Documentation

◆ makeFileIngestionPrefix()

std::string nix::makeFileIngestionPrefix ( FileIngestionMethod m)

Compute the prefix to the hash algorithm which indicates how the files were ingested.

◆ renderContentAddress()

std::string nix::renderContentAddress ( std::optional< ContentAddress > ca)

Render the ContentAddress if it exists to a string, return empty string otherwise.