Nix 2.26.3
Nix, the purely functional package manager; unstable internal interfaces
 
Loading...
Searching...
No Matches
experimental-features.hh
Go to the documentation of this file.
1#pragma once
3
4#include "error.hh"
5#include "types.hh"
6
7#include <nlohmann/json_fwd.hpp>
8
9namespace nix {
10
19{
20 CaDerivations,
21 ImpureDerivations,
22 Flakes,
23 FetchTree,
24 NixCommand,
25 GitHashing,
26 RecursiveNix,
27 NoUrlLiterals,
28 FetchClosure,
29 AutoAllocateUids,
30 Cgroups,
31 DaemonTrustOverride,
32 DynamicDerivations,
33 ParseTomlTimestamps,
34 ReadOnlyLocalStore,
36 ConfigurableImpureEnv,
38 VerifiedFetches,
39 PipeOperators,
40};
41
46
51const std::optional<ExperimentalFeature> parseExperimentalFeature(
52 const std::string_view & name);
53
58std::string_view showExperimentalFeature(const ExperimentalFeature);
59
65nlohmann::json documentExperimentalFeatures();
66
70std::ostream & operator<<(
71 std::ostream & str,
72 const ExperimentalFeature & feature);
73
78std::set<ExperimentalFeature> parseFeatures(const std::set<std::string> &);
79
84class MissingExperimentalFeature : public Error
85{
86public:
91
92 MissingExperimentalFeature(ExperimentalFeature missingFeature);
93};
94
99void to_json(nlohmann::json &, const ExperimentalFeature &);
100void from_json(const nlohmann::json &, ExperimentalFeature &);
101
102}
Definition local-overlay-store.hh:92
ExperimentalFeature missingFeature
Definition experimental-features.hh:90
Definition ssh-store.cc:132
This file defines two main structs/classes used in nix error handling.
ExperimentalFeature
Definition experimental-features.hh:19
ExperimentalFeature Xp
Definition experimental-features.hh:45
std::ostream & str
Definition lexer.l:1728
const std::string_view & name
Definition lexer.l:1709