Skip to main content

Module derivation

Module derivation 

Source

Re-exportsΒ§

pub use crate::nixhash::CAHash;
pub use crate::nixhash::NixHash;

ModulesΒ§

errors πŸ”’
Contains DerivationError, exported as crate::derivation::DerivationError
output πŸ”’
output_name πŸ”’
outputs
Outputs for a derivation.
parse_error πŸ”’
This contains error and result types that can happen while parsing Derivations from ATerm.
parser πŸ”’
This module constructs a Derivation by parsing its ATerm serialization.
validate πŸ”’
write πŸ”’
This module implements the serialisation of derivations into the ATerm format used by C++ Nix.

StructsΒ§

Derivation
Output
References the derivation output.
OutputHash
Represents the information about the hash of a single-output FOD. We store it in a OutputHashMode and NixHash. The serde model uses a different format, as we want to emit the same JSON: There we use hashAlgo and hash:
OutputName
A derivation output name.
Outputs
Derivation outputs.

EnumsΒ§

DerivationError
Errors that can occur during the validation of Derivation structs.
OutputHashMode
Whether the FOD describes the hash of the raw contents (only possible if it’s a single file), or a digest over the NAR representation of the contents.
ParseOutputNameError
ParserError

TraitsΒ§

DerivationAsyncExt πŸ”’ async