Nix 2.93.3
Lix: A modern, delicious implementation of the Nix package manager; unstable internal interfaces
Loading...
Searching...
No Matches
nix::LegacyArgs Struct Reference
Inheritance diagram for nix::LegacyArgs:
nix::MixCommonArgs nix::Args

Public Member Functions

AsyncIoRootaio () override
 LegacyArgs (AsyncIoRoot &aio, const std::string &programName, std::function< bool(Strings::iterator &arg, const Strings::iterator &end)> parseArg)
bool processFlag (Strings::iterator &pos, Strings::iterator end) override
bool processArgs (const Strings &args, bool finish) override
Public Member Functions inherited from nix::MixCommonArgs
 MixCommonArgs (const std::string &programName)
Public Member Functions inherited from nix::Args
virtual std::string description ()
virtual bool forceImpureByDefault ()
virtual std::string doc ()
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 Attributes

AsyncIoRootaio_
std::function< bool(Strings::iterator &arg, const Strings::iterator &end)> parseArg
Public Attributes inherited from nix::MixCommonArgs
std::string programName
Public Attributes inherited from nix::Args
MultiCommand * parent = nullptr

Additional Inherited Members

Static Public Attributes inherited from nix::Args
static CompleterFun completePath
static CompleterFun completeDir
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::MixCommonArgs
virtual void pluginsInited ()
Protected Member Functions inherited from nix::Args
virtual Strings::iterator rewriteArgs (Strings &args, Strings::iterator pos)
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()

Member Function Documentation

◆ aio()

AsyncIoRoot & nix::LegacyArgs::aio ( )
inlineoverridevirtual

Implements nix::Args.

◆ processArgs()

bool nix::LegacyArgs::processArgs ( const Strings & args,
bool finish )
overridevirtual

Process some positional arugments

Parameters
finishWe have parsed everything else, and these are the only arguments left. Used because we accumulate some "pending args" we might have left over.
Returns
true if the passed arguments were fully consumed and no further processing is required, false if the passed arguments should be processed with more context.

Reimplemented from nix::Args.

◆ processFlag()

bool nix::LegacyArgs::processFlag ( Strings::iterator & pos,
Strings::iterator end )
overridevirtual

Process a single flag and its arguments, pulling from an iterator of raw CLI args as needed.

Returns
false if the flag is not recognised.

Reimplemented from nix::Args.


The documentation for this struct was generated from the following files:
  • lix/libmain/shared.hh
  • lix/libmain/shared.cc