#include <command.hh>
Public Member Functions | |
virtual std::vector< FlakeRef > | getFlakeRefsForCompletion () |
![]() | |
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 () |
RootArgs & | getRoot () |
![]() | |
ref< Store > | getEvalStore () |
ref< EvalState > | getEvalState () |
![]() | |
void | run () override |
ref< Store > | getStore () |
virtual ref< Store > | getDstStore () |
virtual ref< Store > | createStore () |
virtual void | run (ref< Store >)=0 |
![]() | |
virtual std::optional< ExperimentalFeature > | experimentalFeature () |
virtual Category | category () |
![]() | |
Bindings * | getAutoArgs (EvalState &state) |
Public Attributes | |
flake::LockFlags | lockFlags |
![]() | |
MultiCommand * | parent = nullptr |
![]() | |
bool | startReplOnEvalErrors = false |
bool | ignoreExceptionsDuringTry = false |
![]() | |
LookupPath | lookupPath |
std::optional< std::string > | evalStoreUrl |
![]() | |
RepairFlag | repair = NoRepair |
Additional Inherited Members | |
![]() | |
using | Category = int |
![]() | |
static CompleterFun | completePath |
static CompleterFun | completeDir |
![]() | |
static constexpr Category | catDefault = 0 |
![]() | |
static constexpr auto | category = "Common evaluation options" |
![]() | |
using | CompleterFun = void(AddCompletions &, size_t, std::string_view) |
using | CompleterClosure = std::function<CompleterFun> |
![]() | |
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 () |
![]() | |
std::map< std::string, Flag::ptr > | longFlags |
std::map< char, Flag::ptr > | shortFlags |
std::list< ExpectedArg > | expectedArgs |
std::list< ExpectedArg > | processedArgs |
std::set< std::string > | hiddenCategories |
![]() | |
static const size_t | ArityAny = std::numeric_limits<size_t>::max() |
A mixin class for commands that process flakes, adding a few standard flake-related options/flags.
|
inlinevirtual |
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 in FlakeCommand, nix::InstallableCommand, and nix::RawInstallablesCommand.