+53
-51
nixos/modules/installer/tools/nixos-option/libnix-copy-paste.cc
+53
-51
nixos/modules/installer/tools/nixos-option/libnix-copy-paste.cc
···+if (!((i >= 'a' && i <= 'z') || (i >= 'A' && i <= 'Z') || (i >= '0' && i <= '9') || i == '_' || i == '-' ||
+3
-3
nixos/modules/installer/tools/nixos-option/libnix-copy-paste.hh
+3
-3
nixos/modules/installer/tools/nixos-option/libnix-copy-paste.hh
···
+431
-428
nixos/modules/installer/tools/nixos-option/nixos-option.cc
+431
-428
nixos/modules/installer/tools/nixos-option/nixos-option.cc
···+explicit Out(std::ostream & ostream) : ostream(ostream), policy(ONE_LINE), write_since_sep(true) {}+bool forbiddenRecursionName(std::string name) { return (!name.empty() && name[0] == '_') || name == "haskellPackages"; }+void recurse(const std::function<bool(std::string const & path, std::variant<Value, Error>)> & f, Context * ctx,+void mapOptions(const std::function<void(std::string const & path)> & f, Context * ctx, Value root)···+void mapConfigValuesInOption(const std::function<void(std::string const & path, std::variant<Value, Error> v)> & f,+Path drvPath = i != v.attrs->end() ? ctx->state->coerceToPath(*i->pos, *i->value, pathset) : "???";+Value parseAndEval(EvalState * state, std::string const & expression, std::string const & path)+void printValue(Context * ctx, Out & out, std::variant<Value, Error> maybe_value, std::string const & path);+void printValue(Context * ctx, Out & out, std::variant<Value, Error> maybe_value, std::string const & path)+void printConfigValue(Context * ctx, Out & out, std::string const & path, std::variant<Value, Error> v)+throw Error("Option's type.getSubOptions isn't a function at '" + attr + "' in path '" + path + "'");+MyArgs myArgs(nix::baseNameOf(argv[0]), [&](Strings::iterator & arg, const Strings::iterator & end) {