1
1
Fork 0
mirror of https://github.com/NixOS/nix.git synced 2025-11-26 20:20:58 +01:00

First commit

This commit is contained in:
Wouter den Breejen 2007-05-15 09:26:33 +00:00
parent 1a793c60ce
commit b712f0f019
7 changed files with 164 additions and 13 deletions

View file

@ -33,17 +33,44 @@ struct DerivationOutput
}
};
struct DerivationStateOutput
{
Path statepath;
string hashAlgo;
string hash;
bool enabled;
string shared;
string synchronization;
StringSet dirs;
DerivationStateOutput()
{
}
DerivationStateOutput(Path statepath, string hashAlgo, string hash, bool enabled, string shared, string synchronization, StringSet dirs)
{
this->statepath = statepath;
this->hashAlgo = hashAlgo;
this->hash = hash;
this->enabled = enabled;
this->shared = shared;
this->synchronization = synchronization;
this->dirs = dirs;
}
};
typedef std::map<string, DerivationOutput> DerivationOutputs;
typedef std::map<string, DerivationStateOutput> DerivationStateOutputs;
/* For inputs that are sub-derivations, we specify exactly which
output IDs we are interested in. */
typedef std::map<Path, StringSet> DerivationInputs;
typedef std::map<string, string> StringPairs;
struct Derivation
{
DerivationOutputs outputs; /* keyed on symbolic IDs */
DerivationStateOutputs stateOutputs; /* */
DerivationInputs inputDrvs; /* inputs that are sub-derivations */
PathSet inputSrcs; /* inputs that are sources */
string platform;