#include <command.hh>
Public Member Functions | |
virtual void | run (ref< Store > store, ref< Installable > installable)=0 |
void | run (ref< Store > store) override |
std::vector< FlakeRef > | getFlakeRefsForCompletion () override |
![]() | |
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 () |
![]() | |
Installables | parseInstallables (ref< Store > store, std::vector< std::string > ss) |
ref< Installable > | parseInstallable (ref< Store > store, const std::string &installable) |
virtual Strings | getDefaultFlakeAttrPaths () |
virtual Strings | getDefaultFlakeAttrPathPrefixes () |
void | completeInstallable (AddCompletions &completions, std::string_view prefix) |
CompleterClosure | getCompleteInstallable () |
![]() | |
ref< Store > | getEvalStore () |
ref< EvalState > | getEvalState () |
![]() | |
void | run () override |
ref< Store > | getStore () |
virtual ref< Store > | getDstStore () |
virtual ref< Store > | createStore () |
![]() | |
virtual std::optional< ExperimentalFeature > | experimentalFeature () |
virtual Category | category () |
![]() | |
Bindings * | getAutoArgs (EvalState &state) |
Additional Inherited Members | |
![]() | |
using | Category = int |
![]() | |
MultiCommand * | parent = nullptr |
![]() | |
std::optional< Path > | file |
std::optional< std::string > | expr |
![]() | |
flake::LockFlags | lockFlags |
![]() | |
bool | startReplOnEvalErrors = false |
bool | ignoreExceptionsDuringTry = false |
![]() | |
LookupPath | lookupPath |
std::optional< std::string > | evalStoreUrl |
![]() | |
RepairFlag | repair = NoRepair |
![]() | |
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 command that operates on exactly one "installable".
|
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.
Main entry point, with a Store
provided
Implements nix::StoreCommand.