Skip to content

Commit

Permalink
chore: run formatters
Browse files Browse the repository at this point in the history
  • Loading branch information
bryanhonof committed Sep 19, 2024
1 parent 3c4da37 commit 153f5a5
Show file tree
Hide file tree
Showing 3 changed files with 63 additions and 61 deletions.
2 changes: 0 additions & 2 deletions maintainers/flake-module.nix
Original file line number Diff line number Diff line change
Expand Up @@ -28,8 +28,6 @@
''^src/build-remote/build-remote\.cc$''
''^src/libcmd/built-path\.cc$''
''^src/libcmd/built-path\.hh$''
''^src/libcmd/command\.cc$''
''^src/libcmd/command\.hh$''
''^src/libcmd/common-eval-args\.cc$''
''^src/libcmd/common-eval-args\.hh$''
''^src/libcmd/editor-for\.cc$''
Expand Down
89 changes: 47 additions & 42 deletions src/libcmd/command.cc
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,8 @@ nix::Commands RegisterCommand::getCommandsFor(const std::vector<std::string> & p
if (name.size() == prefix.size() + 1) {
bool equal = true;
for (size_t i = 0; i < prefix.size(); ++i)
if (name[i] != prefix[i]) equal = false;
if (name[i] != prefix[i])
equal = false;
if (equal)
res.insert_or_assign(name[prefix.size()], command);
}
Expand All @@ -42,16 +43,16 @@ void NixMultiCommand::run()
std::set<std::string> subCommandTextLines;
for (auto & [name, _] : commands)
subCommandTextLines.insert(fmt("- `%s`", name));
std::string markdownError = fmt("`nix %s` requires a sub-command. Available sub-commands:\n\n%s\n",
commandName, concatStringsSep("\n", subCommandTextLines));
std::string markdownError =
fmt("`nix %s` requires a sub-command. Available sub-commands:\n\n%s\n",
commandName,
concatStringsSep("\n", subCommandTextLines));
throw UsageError(renderMarkdownToTerminal(markdownError));
}
command->second->run();
}

StoreCommand::StoreCommand()
{
}
StoreCommand::StoreCommand() {}

ref<Store> StoreCommand::getStore()
{
Expand Down Expand Up @@ -127,14 +128,17 @@ ref<EvalState> EvalCommand::getEvalState()
{
if (!evalState) {
evalState =
#if HAVE_BOEHMGC
#if HAVE_BOEHMGC
std::allocate_shared<EvalState>(
traceable_allocator<EvalState>(),
#else
#else
std::make_shared<EvalState>(
#endif
lookupPath, getEvalStore(), fetchSettings, evalSettings, getStore())
;
#endif
lookupPath,
getEvalStore(),
fetchSettings,
evalSettings,
getStore());

evalState->repair = repair;

Expand All @@ -149,7 +153,8 @@ MixOperateOnOptions::MixOperateOnOptions()
{
addFlag({
.longName = "derivation",
.description = "Operate on the [store derivation](@docroot@/glossary.md#gloss-store-derivation) rather than its outputs.",
.description =
"Operate on the [store derivation](@docroot@/glossary.md#gloss-store-derivation) rather than its outputs.",
.category = installablesCategory,
.handler = {&operateOn, OperateOn::Derivation},
});
Expand Down Expand Up @@ -238,46 +243,48 @@ void StorePathCommand::run(ref<Store> store, StorePaths && storePaths)

MixProfile::MixProfile()
{
addFlag({
.longName = "profile",
.description = "The profile to operate on.",
.labels = {"path"},
.handler = {&profile},
.completer = completePath
});
addFlag(
{.longName = "profile",
.description = "The profile to operate on.",
.labels = {"path"},
.handler = {&profile},
.completer = completePath});
}

void MixProfile::updateProfile(const StorePath & storePath)
{
if (!profile) return;
if (!profile)
return;
auto store = getStore().dynamic_pointer_cast<LocalFSStore>();
if (!store) throw Error("'--profile' is not supported for this Nix store");
if (!store)
throw Error("'--profile' is not supported for this Nix store");
auto profile2 = absPath(*profile);
switchLink(profile2,
createGeneration(*store, profile2, storePath));
switchLink(profile2, createGeneration(*store, profile2, storePath));
}

void MixProfile::updateProfile(const BuiltPaths & buildables)
{
if (!profile) return;
if (!profile)
return;

StorePaths result;

for (auto & buildable : buildables) {
std::visit(overloaded {
[&](const BuiltPath::Opaque & bo) {
result.push_back(bo.path);
std::visit(
overloaded{
[&](const BuiltPath::Opaque & bo) { result.push_back(bo.path); },
[&](const BuiltPath::Built & bfd) {
for (auto & output : bfd.outputs) {
result.push_back(output.second);
}
},
},
[&](const BuiltPath::Built & bfd) {
for (auto & output : bfd.outputs) {
result.push_back(output.second);
}
},
}, buildable.raw());
buildable.raw());
}

if (result.size() != 1)
throw UsageError("'--profile' requires that the arguments produce a single store path, but there are %d", result.size());
throw UsageError(
"'--profile' requires that the arguments produce a single store path, but there are %d", result.size());

updateProfile(result[0]);
}
Expand All @@ -287,7 +294,8 @@ MixDefaultProfile::MixDefaultProfile()
profile = getDefaultProfile();
}

MixEnvironment::MixEnvironment() : ignoreEnvironment(false)
MixEnvironment::MixEnvironment()
: ignoreEnvironment(false)
{
addFlag({
.longName = "ignore-env",
Expand Down Expand Up @@ -335,7 +343,8 @@ MixEnvironment::MixEnvironment() : ignoreEnvironment(false)
});
}

void MixEnvironment::setEnviron() {
void MixEnvironment::setEnviron()
{
if (ignoreEnvironment && !unsetVars.empty())
throw UsageError("--unset-env-var does not make sense with --ignore-env");

Expand All @@ -345,18 +354,14 @@ void MixEnvironment::setEnviron() {
auto env = getEnv();

if (ignoreEnvironment)
std::erase_if(env, [&](const auto & var) {
return !keepVars.contains(var.first);
});
std::erase_if(env, [&](const auto & var) { return !keepVars.contains(var.first); });

if (!setVars.empty())
for (const auto & [name, value] : setVars)
env[name] = value;

if (!unsetVars.empty())
std::erase_if(env, [&](const auto & var) {
return unsetVars.contains(var.first);
});
std::erase_if(env, [&](const auto & var) { return unsetVars.contains(var.first); });

replaceEnv(std::move(env));

Expand Down
33 changes: 16 additions & 17 deletions src/libcmd/command.hh
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ namespace nix {

extern std::string programPath;

extern char * * savedArgv;
extern char ** savedArgv;

class EvalState;
struct Pos;
Expand All @@ -24,7 +24,8 @@ static constexpr Command::Category catSecondary = 100;
static constexpr Command::Category catUtility = 101;
static constexpr Command::Category catNixInstallation = 102;

static constexpr auto installablesCategory = "Options that change the interpretation of [installables](@docroot@/command-ref/new-cli/nix.md#installables)";
static constexpr auto installablesCategory =
"Options that change the interpretation of [installables](@docroot@/command-ref/new-cli/nix.md#installables)";

struct NixMultiCommand : MultiCommand, virtual Command
{
Expand Down Expand Up @@ -112,7 +113,9 @@ struct MixFlakeOptions : virtual Args, EvalCommand
* arguments) so that the completions for these flags can use them.
*/
virtual std::vector<FlakeRef> getFlakeRefsForCompletion()
{ return {}; }
{
return {};
}
};

struct SourceExprCommand : virtual Args, MixFlakeOptions
Expand All @@ -122,11 +125,9 @@ struct SourceExprCommand : virtual Args, MixFlakeOptions

SourceExprCommand();

Installables parseInstallables(
ref<Store> store, std::vector<std::string> ss);
Installables parseInstallables(ref<Store> store, std::vector<std::string> ss);

ref<Installable> parseInstallable(
ref<Store> store, const std::string & installable);
ref<Installable> parseInstallable(ref<Store> store, const std::string & installable);

virtual Strings getDefaultFlakeAttrPaths();

Expand Down Expand Up @@ -272,10 +273,10 @@ struct RegisterCommand
typedef std::map<std::vector<std::string>, std::function<ref<Command>()>> Commands;
static Commands * commands;

RegisterCommand(std::vector<std::string> && name,
std::function<ref<Command>()> command)
RegisterCommand(std::vector<std::string> && name, std::function<ref<Command>()> command)
{
if (!commands) commands = new Commands;
if (!commands)
commands = new Commands;
commands->emplace(name, command);
}

Expand All @@ -285,13 +286,13 @@ struct RegisterCommand
template<class T>
static RegisterCommand registerCommand(const std::string & name)
{
return RegisterCommand({name}, [](){ return make_ref<T>(); });
return RegisterCommand({name}, []() { return make_ref<T>(); });
}

template<class T>
static RegisterCommand registerCommand2(std::vector<std::string> && name)
{
return RegisterCommand(std::move(name), [](){ return make_ref<T>(); });
return RegisterCommand(std::move(name), []() { return make_ref<T>(); });
}

struct MixProfile : virtual StoreCommand
Expand All @@ -313,7 +314,8 @@ struct MixDefaultProfile : MixProfile
MixDefaultProfile();
};

struct MixEnvironment : virtual Args {
struct MixEnvironment : virtual Args
{

StringSet keepVars;
StringSet unsetVars;
Expand Down Expand Up @@ -350,9 +352,6 @@ void completeFlakeRefWithFragment(
std::string showVersions(const std::set<std::string> & versions);

void printClosureDiff(
ref<Store> store,
const StorePath & beforePath,
const StorePath & afterPath,
std::string_view indent);
ref<Store> store, const StorePath & beforePath, const StorePath & afterPath, std::string_view indent);

}

0 comments on commit 153f5a5

Please sign in to comment.