Nix 2.93.3
Lix: A modern, delicious implementation of the Nix 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 nix::CmdBundle nix::CmdEdit nix::CmdEval nix::CmdLog nix::CmdRun nix::CmdSearch nix::Common nix::CmdDevelop nix::CmdPrintDevEnv

Public Member Functions

virtual void run (ref< Store > store, ref< Installable > installable)=0
void run (ref< Store > store) override
std::vector< FlakeRefgetFlakeRefsForCompletion () override
Public Member Functions inherited from nix::Args
virtual std::string description ()
virtual bool forceImpureByDefault ()
virtual std::string doc ()
virtual AsyncIoRootaio ()=0
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 expectArgs (const std::string &label, std::vector< std::string > *dest)
virtual JSON toJSON ()
RootArgs & getRoot ()
Public Member Functions inherited from nix::SourceExprCommand
ref< eval_cache::CachingEvaluatorgetEvaluator () override
Installables parseInstallables (EvalState &state, ref< Store > store, std::vector< std::string > ss)
ref< InstallableparseInstallable (EvalState &state, ref< Store > store, const std::string &installable)
virtual Strings getDefaultFlakeAttrPaths ()
virtual Strings getDefaultFlakeAttrPathPrefixes ()
void completeInstallable (EvalState &state, AddCompletions &completions, std::string_view prefix)
CompleterClosure getCompleteInstallable ()
Public Member Functions inherited from nix::EvalCommand
ref< StoregetEvalStore ()
Public Member Functions inherited from nix::StoreCommand
void run () override
ref< StoregetStore ()
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 (Evaluator &state)

Additional Inherited Members

Public Types inherited from nix::Command
typedef int Category
Public Attributes inherited from nix::Args
MultiCommand * parent = 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
SearchPath searchPath
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 constexpr Category catCustom = 1000
Static Public Attributes inherited from nix::MixEvalArgs
static constexpr auto category = "Common evaluation options"
Protected Types inherited from nix::Args
typedef void CompleterFun(AddCompletions &, size_t, std::string_view)
typedef std::function< CompleterFunCompleterClosure
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 ()
virtual std::optional< std::reference_wrapper< RootArgs > > asRootArgs ()
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:
  • lix/libcmd/command.hh
  • lix/libcmd/installables.cc