Nix  2.93.0-dev
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"
Include dependency graph for content-address.hh:
This graph shows which files directly or indirectly include this file:

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.