LLVM: llvm::opt::DerivedArgList Class Reference (original) (raw)

DerivedArgList - An ordered collection of driver arguments, whose storage may be in another argument list. More...

#include "[llvm/Option/ArgList.h](ArgList%5F8h%5Fsource.html)"

Public Member Functions
DerivedArgList (const InputArgList &BaseArgs)
Construct a new derived arg list from BaseArgs.
const char * getArgString (unsigned Index) const override
getArgString - Return the input argument string at Index.
unsigned getNumInputArgStrings () const override
getNumInputArgStrings - Return the number of original argument strings, which are guaranteed to be the first strings in the argument string list.
const InputArgList & getBaseArgs () const
Arg Synthesis
void AddSynthesizedArg (Arg *A)
AddSynthesizedArg - Add a argument to the list of synthesized arguments (to be freed).
const char * MakeArgStringRef (StringRef Str) const override
Construct a constant string pointer whose lifetime will match that of the ArgList.
void AddFlagArg (const Arg *BaseArg, const Option Opt)
AddFlagArg - Construct a new FlagArg for the given option Id and append it to the argument list.
void AddPositionalArg (const Arg *BaseArg, const Option Opt, StringRef Value)
AddPositionalArg - Construct a new Positional arg for the given option Id, with the provided Value and append it to the argument list.
void AddSeparateArg (const Arg *BaseArg, const Option Opt, StringRef Value)
AddSeparateArg - Construct a new Positional arg for the given option Id, with the provided Value and append it to the argument list.
void AddJoinedArg (const Arg *BaseArg, const Option Opt, StringRef Value)
AddJoinedArg - Construct a new Positional arg for the given option Id, with the provided Value and append it to the argument list.
Arg * MakeFlagArg (const Arg *BaseArg, const Option Opt) const
MakeFlagArg - Construct a new FlagArg for the given option Id.
Arg * MakePositionalArg (const Arg *BaseArg, const Option Opt, StringRef Value) const
MakePositionalArg - Construct a new Positional arg for the given option Id, with the provided Value.
Arg * MakeSeparateArg (const Arg *BaseArg, const Option Opt, StringRef Value) const
MakeSeparateArg - Construct a new Positional arg for the given option Id, with the provided Value.
Arg * MakeJoinedArg (const Arg *BaseArg, const Option Opt, StringRef Value) const
MakeJoinedArg - Construct a new Positional arg for the given option Id, with the provided Value.
const char * MakeArgString (const Twine &Str) const
Public Member Functions inherited from llvm::opt::ArgList
LLVM_ABI void append (Arg *A)
append - Append A to the arg list.
const arglist_type & getArgs () const
unsigned size () const
template<typename ... OptSpecifiers>
bool hasArgNoClaim (OptSpecifiers ...Ids) const
hasArg - Does the arg list contain any option matching Id.
template<typename ... OptSpecifiers>
bool hasArg (OptSpecifiers ...Ids) const
bool hasMultipleArgs (OptSpecifier Id) const
Return true if the arg list contains multiple arguments matching Id.
template<typename... OptSpecifiers>
LLVM_ATTRIBUTE_NOINLINE Arg * getLastArg (OptSpecifiers... Ids) const
Return the last argument matching Id, or null.
template<typename... OptSpecifiers>
LLVM_ATTRIBUTE_NOINLINE Arg * getLastArgNoClaim (OptSpecifiers... Ids) const
Return the last argument matching Id, or null.
LLVM_ABI_FOR_TEST StringRef getSubCommand (ArrayRef< OptTable::SubCommand > AllSubCommands, std::function< void(ArrayRef< StringRef >)> HandleMultipleSubcommands, std::function< void(ArrayRef< StringRef >)> HandleOtherPositionals) const
getSubCommand - Find subcommand from the arguments if the usage is valid.
iterator begin ()
iterator end ()
reverse_iterator rbegin ()
reverse_iterator rend ()
const_iterator begin () const
const_iterator end () const
const_reverse_iterator rbegin () const
const_reverse_iterator rend () const
template<typename ... OptSpecifiers>
iterator_range< filtered_iterator< sizeof...(OptSpecifiers)> > filtered (OptSpecifiers ...Ids) const
template<typename ... OptSpecifiers>
iterator_range< filtered_reverse_iterator< sizeof...(OptSpecifiers)> > filtered_reverse (OptSpecifiers ...Ids) const
LLVM_ABI void eraseArg (OptSpecifier Id)
eraseArg - Remove any option matching Id.
LLVM_ABI StringRef getLastArgValue (OptSpecifier Id, StringRef Default="") const
getLastArgValue - Return the value of the last argument, or a default.
LLVM_ABI std::vector< std::string > getAllArgValues (OptSpecifier Id) const
getAllArgValues - Get the values of all instances of the given argument as strings.
LLVM_ABI bool hasFlag (OptSpecifier Pos, OptSpecifier Neg, bool Default) const
hasFlag - Given an option Pos and its negative form Neg, return true if the option is present, false if the negation is present, and Default if neither option is given.
LLVM_ABI bool hasFlagNoClaim (OptSpecifier Pos, OptSpecifier Neg, bool Default) const
LLVM_ABI bool hasFlag (OptSpecifier Pos, OptSpecifier PosAlias, OptSpecifier Neg, bool Default) const
hasFlag - Given an option Pos, an alias PosAlias and its negative form Neg, return true if the option or its alias is present, false if the negation is present, and Default if none of the options are given.
LLVM_ABI void addOptInFlag (ArgStringList &Output, OptSpecifier Pos, OptSpecifier Neg) const
Given an option Pos and its negative form Neg, render the option if Pos is present.
void addOptOutFlag (ArgStringList &Output, OptSpecifier Pos, OptSpecifier Neg) const
Render the option if Neg is present.
template<typename... OptSpecifiers>
void addLastArg (ArgStringList &Output, OptSpecifiers... Ids) const
Render only the last argument match Id0, if present.
template<typename... OptSpecifiers>
void AddLastArg (ArgStringList &Output, OptSpecifiers... Ids) const
LLVM_ABI void AddAllArgsExcept (ArgStringList &Output, ArrayRef< OptSpecifier > Ids, ArrayRef< OptSpecifier > ExcludeIds) const
AddAllArgsExcept - Render all arguments matching any of the given ids and not matching any of the excluded ids.
LLVM_ABI void addAllArgs (ArgStringList &Output, ArrayRef< OptSpecifier > Ids) const
Render all arguments matching any of the given ids.
LLVM_ABI void AddAllArgs (ArgStringList &Output, OptSpecifier Id0) const
AddAllArgs - Render all arguments matching the given ids.
LLVM_ABI void AddAllArgValues (ArgStringList &Output, OptSpecifier Id0, OptSpecifier Id1=0U, OptSpecifier Id2=0U) const
AddAllArgValues - Render the argument values of all arguments matching the given ids.
LLVM_ABI void AddAllArgsTranslated (ArgStringList &Output, OptSpecifier Id0, const char *Translation, bool Joined=false) const
AddAllArgsTranslated - Render all the arguments matching the given ids, but forced to separate args and using the provided name instead of the first option value.
LLVM_ABI void ClaimAllArgs (OptSpecifier Id0) const
ClaimAllArgs - Claim all arguments which match the given option id.
template<typename... OptSpecifiers>
void claimAllArgs (OptSpecifiers... Ids) const
LLVM_ABI void ClaimAllArgs () const
ClaimAllArgs - Claim all arguments.
const char * MakeArgString (const Twine &Str) const
LLVM_ABI const char * GetOrMakeJoinedArgString (unsigned Index, StringRef LHS, StringRef RHS) const
Create an arg string for (LHS + RHS), reusing the string at Index if possible.
LLVM_ABI void print (raw_ostream &O) const
LLVM_ABI void dump () const
Additional Inherited Members
Public Types inherited from llvm::opt::ArgList
using arglist_type = SmallVector<Arg *, 16>
using iterator = arg_iterator<arglist_type::iterator>
using const_iterator = arg_iterator<arglist_type::const_iterator>
using reverse_iterator = arg_iterator<arglist_type::reverse_iterator>
using const_reverse_iterator
template<unsigned N>
using filtered_iterator
template<unsigned N>
using filtered_reverse_iterator
Protected Member Functions inherited from llvm::opt::ArgList
ArgList ()=default
ArgList (ArgList &&RHS)
ArgList & operator= (ArgList &&RHS)
~ArgList ()=default
Static Protected Member Functions inherited from llvm::opt::ArgList
static OptSpecifier toOptSpecifier (OptSpecifier S)

DerivedArgList - An ordered collection of driver arguments, whose storage may be in another argument list.

Definition at line 489 of file ArgList.h.

Construct a new derived arg list from BaseArgs.

Definition at line 275 of file ArgList.cpp.

AddFlagArg()

AddJoinedArg()

AddPositionalArg()

AddSeparateArg()

AddSynthesizedArg()

void DerivedArgList::AddSynthesizedArg ( Arg * A )

AddSynthesizedArg - Add a argument to the list of synthesized arguments (to be freed).

Definition at line 282 of file ArgList.cpp.

References A().

getArgString()

const char * llvm::opt::DerivedArgList::getArgString ( unsigned Index) const inlineoverridevirtual

getBaseArgs()

getNumInputArgStrings()

unsigned llvm::opt::DerivedArgList::getNumInputArgStrings ( ) const inlineoverridevirtual

getNumInputArgStrings - Return the number of original argument strings, which are guaranteed to be the first strings in the argument string list.

Implements llvm::opt::ArgList.

Definition at line 503 of file ArgList.h.

MakeArgString()

MakeArgStringRef()

MakeFlagArg()

MakeJoinedArg()

MakePositionalArg()

MakeSeparateArg()


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