Nix 2.26.3
Nix, the purely functional package manager; unstable internal interfaces
 
Loading...
Searching...
No Matches
nix::InstallableCommand Struct Referenceabstract

#include <command.hh>

Inheritance diagram for nix::InstallableCommand:
nix::Args nix::SourceExprCommand nix::Args nix::MixFlakeOptions nix::Args nix::EvalCommand nix::StoreCommand nix::MixEvalArgs nix::Command nix::Args nix::MixRepair nix::Args nix::Args CmdLog Common nix::InstallableValueCommand CmdDevelop CmdPrintDevEnv CmdBundle CmdEdit CmdEval CmdRun CmdSearch

Public Member Functions

virtual void run (ref< Store > store, ref< Installable > installable)=0
 
void run (ref< Store > store) override
 
std::vector< FlakeRef > getFlakeRefsForCompletion () override
 
- Public Member Functions inherited from nix::Args
virtual std::string description ()
 
virtual bool forceImpureByDefault ()
 
virtual std::string doc ()
 
virtual Path getCommandBaseDir () const
 Get the base directory for the command.
 
void addFlag (Flag &&flag)
 
void removeFlag (const std::string &longName)
 
void expectArgs (ExpectedArg &&arg)
 
void expectArg (const std::string &label, std::string *dest, bool optional=false)
 
void expectArg (const std::string &label, std::filesystem::path *dest, bool optional=false)
 
void expectArgs (const std::string &label, std::vector< std::string > *dest)
 
virtual nlohmann::json toJSON ()
 
RootArgsgetRoot ()
 
- Public Member Functions inherited from nix::SourceExprCommand
Installables parseInstallables (ref< Store > store, std::vector< std::string > ss)
 
ref< InstallableparseInstallable (ref< Store > store, const std::string &installable)
 
virtual Strings getDefaultFlakeAttrPaths ()
 
virtual Strings getDefaultFlakeAttrPathPrefixes ()
 
void completeInstallable (AddCompletions &completions, std::string_view prefix)
 
CompleterClosure getCompleteInstallable ()
 
- Public Member Functions inherited from nix::EvalCommand
ref< StoregetEvalStore ()
 
ref< EvalStategetEvalState ()
 
- Public Member Functions inherited from nix::StoreCommand
void run () override
 
ref< StoregetStore ()
 
virtual ref< StoregetDstStore ()
 
virtual ref< StorecreateStore ()
 
- Public Member Functions inherited from nix::Command
virtual std::optional< ExperimentalFeatureexperimentalFeature ()
 
virtual Category category ()
 
- Public Member Functions inherited from nix::MixEvalArgs
BindingsgetAutoArgs (EvalState &state)
 

Additional Inherited Members

- Public Types inherited from nix::Command
using Category = int
 
- Public Attributes inherited from nix::Args
MultiCommandparent = nullptr
 
- Public Attributes inherited from nix::SourceExprCommand
std::optional< Pathfile
 
std::optional< std::string > expr
 
- Public Attributes inherited from nix::MixFlakeOptions
flake::LockFlags lockFlags
 
- Public Attributes inherited from nix::EvalCommand
bool startReplOnEvalErrors = false
 
bool ignoreExceptionsDuringTry = false
 
- Public Attributes inherited from nix::MixEvalArgs
LookupPath lookupPath
 
std::optional< std::string > evalStoreUrl
 
- Public Attributes inherited from nix::MixRepair
RepairFlag repair = NoRepair
 
- Static Public Attributes inherited from nix::Args
static CompleterFun completePath
 
static CompleterFun completeDir
 
- Static Public Attributes inherited from nix::Command
static constexpr Category catDefault = 0
 
- Static Public Attributes inherited from nix::MixEvalArgs
static constexpr auto category = "Common evaluation options"
 
- Protected Types inherited from nix::Args
using CompleterFun = void(AddCompletions &, size_t, std::string_view)
 
using CompleterClosure = std::function<CompleterFun>
 
- Protected Member Functions inherited from nix::Args
virtual bool processFlag (Strings::iterator &pos, Strings::iterator end)
 
virtual bool processArgs (const Strings &args, bool finish)
 
virtual Strings::iterator rewriteArgs (Strings &args, Strings::iterator pos)
 
virtual void initialFlagsProcessed ()
 
- Protected Attributes inherited from nix::Args
std::map< std::string, Flag::ptr > longFlags
 
std::map< char, Flag::ptr > shortFlags
 
std::list< ExpectedArgexpectedArgs
 
std::list< ExpectedArgprocessedArgs
 
std::set< std::string > hiddenCategories
 
- Static Protected Attributes inherited from nix::Args
static const size_t ArityAny = std::numeric_limits<size_t>::max()
 

Detailed Description

A command that operates on exactly one "installable".

Member Function Documentation

◆ getFlakeRefsForCompletion()

std::vector< FlakeRef > nix::InstallableCommand::getFlakeRefsForCompletion ( )
overridevirtual

The completion for some of these flags depends on the flake(s) in question.

This method should be implemented to gather all flakerefs the command is operating with (presumably specified via some other arguments) so that the completions for these flags can use them.

Reimplemented from nix::MixFlakeOptions.

◆ run()

void nix::InstallableCommand::run ( ref< Store > )
overridevirtual

Main entry point, with a Store provided

Implements nix::StoreCommand.


The documentation for this struct was generated from the following files: