nl:: ArgParser
Zusammenfassung
Aufzählungen |
|
---|---|
OptionArgumentType
|
enum Definiert die Argumentanforderungen für eine Befehlszeilenoption. |
Typedefs |
|
---|---|
NonOptionArgHandlerFunct)(const char *progName, int argc, char *argv[])
|
typedefbool(*
Funktion, die aufgerufen werden kann, um alle verbleibenden Befehlszeilenargumente zu verarbeiten, die keine Optionen sind. |
OptionHandlerFunct)(const char *progName, OptionSet *optSet, int id, const char *name, const char *arg)
|
typedefbool(*
Eine Funktion, die aufgerufen werden kann, um eine Reihe von Befehlszeilenoptionen zu verarbeiten. |
Variablen |
|
---|---|
PrintArgError = DefaultPrintArgError)(const char *msg,...)
|
void(*
Zeiger auf die Funktion, die zum Drucken von Fehlern verwendet wird, die beim Parsen von Argumenten auftreten.
|
gActiveOptionSets = NULL
|
OptionSet **
Die Liste der OptionSets, die an den derzeit aktiven ParseArgs()-Aufruf übergeben wird.
|
Funktionen |
|
---|---|
CountAllOptions(OptionSet *optSets[])
|
size_t
|
CountAllOptions(OptionSet **optSets)
|
size_t
|
CountOptionSets(OptionSet *optSets[])
|
size_t
|
CountOptionSets(OptionSet **optSets)
|
size_t
|
DefaultPrintArgError(const char *msg, ...)
|
void
Gibt eine Fehlermeldung im Zusammenhang mit der Argumentanalyse aus.
|
FindOptionById(OptionSet **optSets, int optId, OptionSet *& optSet, OptionDef *& optDef)
|
void
|
FindOptionByIndex(OptionSet **optSets, int optIndex, OptionSet *& optSet, OptionDef *& optDef)
|
void
|
GetNextArg(char *& parsePoint)
|
bool
|
IsShortOptionChar(int ch)
|
bool
|
MakeLongOptions(OptionSet **optSets)
|
struct option *
|
MakeShortOptions(OptionSet **optSets)
|
char *
|
MakeUniqueHelpGroupNamesList(OptionSet *optSets[])
|
const char **
|
ParseArgs(const char *progName, int argc, char *argv[], OptionSet *optSets[], NonOptionArgHandlerFunct nonOptArgHandler, bool ignoreUnknown)
|
bool
Parsen Sie eine Reihe von Befehlszeilenargumenten und rufen Sie Verarbeitungsfunktionen zur Verarbeitung der einzelnen Optionen und Nicht-Options-Argumente auf.
|
ParseArgs(const char *progName, int argc, char *argv[], OptionSet *optSets[], NonOptionArgHandlerFunct nonOptArgHandler)
|
bool
|
ParseArgs(const char *progName, int argc, char *argv[], OptionSet *optSets[])
|
bool
|
ParseArgsFromEnvVar(const char *progName, const char *varName, OptionSet *optSets[], NonOptionArgHandlerFunct nonOptArgHandler, bool ignoreUnknown)
|
bool
Parsen Sie eine Reihe von Argumenten aus einer benannten Umgebungsvariablen.
|
ParseArgsFromEnvVar(const char *progName, const char *varName, OptionSet *optSets[])
|
bool
|
ParseArgsFromEnvVar(const char *progName, const char *varName, OptionSet *optSets[], NonOptionArgHandlerFunct nonOptArgHandler)
|
bool
|
ParseArgsFromString(const char *progName, const char *argStr, OptionSet *optSets[], NonOptionArgHandlerFunct nonOptArgHandler, bool ignoreUnknown)
|
bool
Parst eine Reihe von Argumenten aus einem bestimmten String.
|
ParseArgsFromString(const char *progName, const char *argStr, OptionSet *optSets[], NonOptionArgHandlerFunct nonOptArgHandler)
|
bool
|
ParseArgsFromString(const char *progName, const char *argStr, OptionSet *optSets[])
|
bool
|
ParseBoolean(const char *str, bool & output)
|
bool
Parsen Sie einen String als booleschen Wert.
|
ParseFabricId(const char *str, uint64_t & fabricId, bool allowReserved)
|
bool
Parst eine Weave-Fabric-ID in Textform.
|
ParseHexString(const char *hexStr, uint32_t strLen, uint8_t *outBuf, uint32_t outBufSize, uint32_t & outDataLen)
|
bool
Parst einen String von Byte in Hexadezimalform.
|
ParseIPAddress(const char *str, IPAddress & output)
|
bool
Parsen Sie eine IP-Adresse in Textform.
|
ParseInt(const char *str, uint64_t & output, int base)
|
bool
Parsen und versuchen, einen String in eine vorzeichenlose 64-Bit-Ganzzahl zu konvertieren, wobei die auf dem Basisparameter entsprechende Interpretation angewendet wird.
|
ParseInt(const char *str, uint32_t & output, int base)
|
bool
Parsen und versuchen, einen String in eine vorzeichenlose 32-Bit-Ganzzahl zu konvertieren, wobei die auf dem Basisparameter entsprechende Interpretation angewendet wird.
|
ParseInt(const char *str, int32_t & output, int base)
|
bool
Parsen und versuchen, einen String in eine 32-Bit-Ganzzahl mit Vorzeichen zu konvertieren, wobei die entsprechende Interpretation basierend auf dem Basisparameter angewendet wird.
|
ParseInt(const char *str, uint64_t & output)
|
bool
Parsen und versuchen, einen String, der als Dezimalwert interpretiert wird, in eine vorzeichenlose 64-Bit-Ganzzahl umzuwandeln, wobei die auf dem Basisparameter entsprechende Interpretation angewendet wird.
|
ParseInt(const char *str, uint32_t & output)
|
bool
Parsen und versuchen, einen String, der als Dezimalwert interpretiert wird, in eine vorzeichenlose 32-Bit-Ganzzahl umzuwandeln und die entsprechende Interpretation basierend auf dem Basisparameter anzuwenden.
|
ParseInt(const char *str, int32_t & output)
|
bool
Parsen und versuchen, einen String, der als Dezimalwert interpretiert wird, in eine vorzeichenbehaftete 32-Bit-Ganzzahl umzuwandeln und die entsprechende Interpretation basierend auf dem Basisparameter anzuwenden.
|
ParseInt(const char *str, uint16_t & output)
|
bool
Parsen und versuchen, einen String, der als Dezimalwert interpretiert wird, in eine vorzeichenlose 16-Bit-Ganzzahl umzuwandeln, wobei die auf dem Basisparameter entsprechende Interpretation angewendet wird.
|
ParseInt(const char *str, int16_t & output)
|
bool
Parsen Sie einen String, der als Dezimalwert interpretiert wird, und wandeln Sie ihn in eine vorzeichenbehaftete 16-Bit-Ganzzahl um. Dabei wird die entsprechende Interpretation basierend auf dem Basisparameter angewendet.
|
ParseInt(const char *str, uint8_t & output)
|
bool
Parsen und versuchen, einen String, der als Dezimalwert interpretiert wird, in eine vorzeichenlose 8-Bit-Ganzzahl umzuwandeln und die entsprechende Interpretation basierend auf dem Basisparameter anzuwenden.
|
ParseNodeId(const char *str, uint64_t & nodeId)
|
bool
Parst eine Weave-Knoten-ID in Textform.
|
ParseSubnetId(const char *str, uint16_t & subnetId)
|
bool
Parsen und versuchen, einen String in eine vorzeichenlose 16-Bit-Subnetz-ID umzuwandeln, wobei der String als hexadezimal interpretiert wird.
|
PrintOptionHelp(OptionSet *optSets[], FILE *s)
|
void
Gibt den Hilfetext für eine angegebene Liste von Optionen an einen Stream aus.
|
PutStringWithBlankLine(FILE *s, const char *str)
|
void
|
PutStringWithNewLine(FILE *s, const char *str)
|
void
|
SplitArgs(char *argStr, char **& argList, char *initialArg)
|
int32_t
|
Kurse |
|
---|---|
nl:: |
Häufiges OptionSet für den Umgang mit Informationsoptionen (Hilfe, Version). |
nl:: |
Ein OptionSet, wobei der Handler eine virtuelle Funktion ist. |
Strukturen |
|
---|---|
nl:: |
Definiert eine Befehlszeilenoption. |
nl:: |
Definiert eine Gruppe logisch zusammenhängender und wiederverwendbarer Befehlszeilenoptionen. |
Aufzählungen
OptionArgumentType
OptionArgumentType
Definiert die Argumentanforderungen für eine Befehlszeilenoption.
Typedefs
NonOptionArgHandlerFunct
bool(* NonOptionArgHandlerFunct)(const char *progName, int argc, char *argv[])
Funktion, die aufgerufen werden kann, um alle verbleibenden Befehlszeilenargumente zu verarbeiten, die keine Optionen sind.
OptionHandlerFunct
bool(* OptionHandlerFunct)(const char *progName, OptionSet *optSet, int id, const char *name, const char *arg)
Eine Funktion, die aufgerufen werden kann, um eine Reihe von Befehlszeilenoptionen zu verarbeiten.
Variablen
PrintArgError
void(* PrintArgError)(const char *msg,...) = DefaultPrintArgError
Zeiger auf die Funktion, die zum Drucken von Fehlern verwendet wird, die beim Parsen von Argumenten auftreten.
Anwendungen sollten „PrintArgError()“ aufrufen, um Fehler in ihren Optionen und Nicht-Options-Argumentverarbeitungsfunktionen zu melden, anstatt direkt in stdout/stderr zu drucken.
Die Standardeinstellung ist ein Zeiger auf die Funktion DefaultPrintArgError()
.
gActiveOptionSets
OptionSet ** gActiveOptionSets = NULL
Die Liste der OptionSets, die an den derzeit aktiven ParseArgs()-Aufruf übergeben wird.
Dieser Wert ist NULL, wenn kein Aufruf von ParseArgs() erfolgt.
Funktionen
CountAllOptions
size_t CountAllOptions( OptionSet *optSets[] )
CountAllOptions
size_t CountAllOptions( OptionSet **optSets )
CountOptionSets
size_t CountOptionSets( OptionSet *optSets[] )
CountOptionSets
size_t CountOptionSets( OptionSet **optSets )
DefaultPrintArgError
void DefaultPrintArgError( const char *msg, ... )
Gibt eine Fehlermeldung im Zusammenhang mit der Argumentanalyse aus.
Standardfunktion zum Drucken von Fehlermeldungen, die beim Parsen von Argumenten auftreten.
Details | |||
---|---|---|---|
Parameter |
|
Anwendungen sollten über den Funktionszeiger PrintArgError aufrufen, anstatt diese Funktion direkt aufzurufen.
FindOptionById
void FindOptionById( OptionSet **optSets, int optId, OptionSet *& optSet, OptionDef *& optDef )
FindOptionByIndex
void FindOptionByIndex( OptionSet **optSets, int optIndex, OptionSet *& optSet, OptionDef *& optDef )
GetNextArg
bool GetNextArg( char *& parsePoint )
IsShortOptionChar
bool IsShortOptionChar( int ch )
MakeLongOptions
struct option * MakeLongOptions( OptionSet **optSets )
MakeShortOptions
char * MakeShortOptions( OptionSet **optSets )
MakeUniqueHelpGroupNamesList
const char ** MakeUniqueHelpGroupNamesList( OptionSet *optSets[] )
ParseArgs
bool ParseArgs( const char *progName, int argc, char *argv[], OptionSet *optSets[], NonOptionArgHandlerFunct nonOptArgHandler, bool ignoreUnknown )
Parsen Sie eine Reihe von Befehlszeilenargumenten und rufen Sie Verarbeitungsfunktionen zur Verarbeitung der einzelnen Optionen und Nicht-Options-Argumente auf.
ParseArgs() nimmt eine Liste von Argumenten (argv
) und parst sie gemäß einem Satz von bereitgestellten Optionsdefinitionen. Die Funktion unterstützt die Optionen long (opt) und kurz (-o) und implementiert dieselbe Optionssyntax wie die GNU-Funktion getopt_long(3).
Details | |||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Parameter |
|
||||||||||||
Rückgabe |
true , wenn alle Optionen und Nicht-Optionsargumente erfolgreich geparst wurden; false , wenn eine Option nicht erkannt wurde oder eine der Handler-Funktionen fehlgeschlagen ist (d.h. "false" zurückgegeben). |
Optionsdefinitionen werden als Array von OptionSet-Strukturen (optSets
) an ParseArgs() übergeben. Jedes OptionSet enthält ein Array von Optionsdefinitionen und eine Handler-Funktion. ParseArgs() verarbeitet Optionsargumente in der angegebenen Reihenfolge und ruft für jede erkannte Option die entsprechende Handler-Funktion auf. Nachdem alle Optionen geparst wurden, wird einmal eine separate Nicht-Options-Handler-Funktion (nonOptArgHandler
) aufgerufen, um alle verbleibenden Argumente zu verarbeiten.
OPTIONEN
Ein OptionSet enthält eine Reihe von Optionsdefinitionen sowie einen Zeiger auf eine Handler-Funktion, die aufgerufen wird, wenn eine der verknüpften Optionen erkannt wird. Optionssätze enthalten auch Hilfetext zur Syntax und zum Zweck der einzelnen Optionen (siehe OPTION-HILFE unten). Mit Optionssätzen können wiederverwendbare Sammlungen verwandter Optionen erstellt werden. Dies vereinfacht die Verwaltung mehrerer Anwendungen, die ähnliche Optionen akzeptieren (z.B. Testanwendungen).
Es gibt zwei Muster für die Definition von OptionSetsone. Sie können entweder eine Instanz der OptionSet-Struktur selbst initialisieren, z. B. als statische globale, oder eine Unterklasse von OptionSetBase und einen Konstruktor bereitstellen. Letzteres verwendet eine reine virtuelle HandleOption()
-Funktion, um die Optionenverarbeitung an die Unterklasse zu delegieren.
Listen von OptionSets werden als NULL-terminiertes Array von Zeigern an die Funktion ParseArgs() übergeben. E.g.:
static OptionSet gToolOptions = { HandleOption, // handler function gToolOptionDefs, // array of option definitions "GENERAL OPTIONS", // help group gToolOptionHelp // option help text }; static OptionSet *gOptionSets[] = { &gToolOptions, &gNetworkOptions, &gTestingOptions, &gHelpOptions, NULL }; int main(int argc, char *argv[]) { if (!ParseArgs("test-app", argc, argv, gOptionSets)) { ... } }
OPTIONENDEFINITIONEN
Optionen werden mithilfe der OptionDef
-Struktur definiert. Optionsdefinitionen sind als Array von OptionDef-Elementen organisiert, wobei jedes Element Folgendes enthält: den Namen der Option, eine Ganzzahl-ID zur Identifizierung der Option und ob die Option ein Argument erwartet oder zulässt. Das Ende des Optionsarrays wird durch ein NULL-Name-Feld signalisiert. E.g.:
enum { kOpt_Listen = 1000, kOpt_Length, kOpt_Count, }; static OptionDef gToolOptionDefs[] = { // NAME REQUIRES/ALLOWS ARG? ID/SHORT OPTION CHAR // ============================================================ { "listen", kNoArgument, kOpt_Listen }, { "length", kArgumentRequired, kOpt_Length }, { "count", kArgumentRequired, kOpt_Count }, { "num", kArgumentRequired, kOpt_Count }, // alias for --count { "debug", kArgumentOptional, 'd' }, { "help", kNoArgument, 'h' }, { NULL } };
OPTION-IDs
Mit Options-IDs werden Optionen für den Code identifiziert, der sie verarbeitet (Funktion OptionHandler). Options-IDs beziehen sich auf das OptionSet, in dem sie erscheinen, und können daher in verschiedenen OptionSets wiederverwendet werden (siehe KURZOPTIONEN unten). Üblicherweise beginnen Nummerierungsoptionen bei 1000, es kann jedoch auch eine beliebige Zahl > 128 verwendet werden. Alias-Optionen können mithilfe derselben Options-ID mit unterschiedlichen Optionsnamen erstellt werden.
KURZ OPTIONEN
Im Gegensatz zu getopt_long(3) verwendet ParseArgs() keinen separaten String, der die Liste kurzer Optionszeichen angibt. Vielmehr kann jede Option, deren ID-Wert in den Bereich der grafischen ASCII-Zeichen fällt, dieses Zeichen als kurze Option verwendet werden.
ParseArgs() erfordert, dass kurze Optionszeichen in allen OptionSets eindeutig sind. Aus diesem Grund wird von der Verwendung kurzer Optionen für OptionsSets abgeraten, die programmübergreifend genutzt werden, da die Gefahr von Kollisionen sehr hoch ist. Kurze Optionszeichen können in einem einzelnen OptionSet wiederverwendet werden, um das Erstellen langer Optionsnamen mit Aliasnamen zu ermöglichen.
HILFE ZU OPTIONEN
Jedes OptionSet enthält einen OptionHelp
-String, der den Zweck und die Syntax der zugehörigen Optionen beschreibt. Diese Strings werden von der PrintOptionHelp()
-Funktion verwendet, um Nutzungsinformationen zu Optionen zu generieren.
Konventionsgemäß bestehen Optionshilfestrings aus einem Syntaxbeispiel, gefolgt von einer Textbeschreibung der Option. Wenn die Option eine Kurzversion oder einen Aliasnamen hat, wird sie vor dem primären Langnamen angegeben. Aus Konsistenzgründen werden Syntaxzeilen mit 2 Leerzeichen eingerückt, Textzeilen mit 7 Leerzeichen. Nach jeder Optionsbeschreibung, einschließlich der letzten, folgt eine einzelne Leerzeile.
E.g.:
static const char *const gToolOptionHelp = " --listen\n" " Listen and respond to requests sent from another node.\n" "\n" " --length\n" " Send requests with the specified number of bytes in the payload.\n" "\n" " --num, --count \n" " Send the specified number of requests and exit.\n" "\n" " -d, --debug [ ]\n" " Set debug logging to the given level. (Default: 1)\n" "\n" " -h, --help\n" " Print help information.\n" "\n";
OPTION-HILFEGRUPPEN
OptionSets enthalten einen HelpGroupName
-String, mit dem Optionen in der Hilfeausgabe gruppiert werden. Die Funktion PrintOptionHelp()
verwendet HelpGroupName als Abschnittstitel in der generierten Nutzungsausgabe. Wenn mehrere OptionSets denselben HelpGroupName haben, druckt PrintOptionHelp() die Hilfe zu den verschiedenen OptionSets unter einem gemeinsamen Abschnittstitel aus.
ParseArgs
bool ParseArgs( const char *progName, int argc, char *argv[], OptionSet *optSets[], NonOptionArgHandlerFunct nonOptArgHandler )
ParseArgs
bool ParseArgs( const char *progName, int argc, char *argv[], OptionSet *optSets[] )
ParseArgsFromEnvVar
bool ParseArgsFromEnvVar( const char *progName, const char *varName, OptionSet *optSets[], NonOptionArgHandlerFunct nonOptArgHandler, bool ignoreUnknown )
Parsen Sie eine Reihe von Argumenten aus einer benannten Umgebungsvariablen.
ParseArgsFromEnvVar() liest eine benannte Umgebungsvariable und übergibt den Wert zum Parsen an ParseArgsFromString()
. Wenn die Umgebungsvariable nicht festgelegt ist, führt die Funktion nichts aus.
Details | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Parameter |
|
||||||||||
Rückgabe |
true , wenn alle Optionen und Nicht-Options-Argumente erfolgreich geparst wurden oder wenn die angegebene Umgebungsvariable nicht festgelegt ist; false , wenn eine Option nicht erkannt wurde, eine der Handler-Funktionen fehlgeschlagen ist (d.h. "false" zurückgegeben wurde) oder wenn ein interner Fehler aufgetreten ist. |
ParseArgsFromEnvVar
bool ParseArgsFromEnvVar( const char *progName, const char *varName, OptionSet *optSets[] )
ParseArgsFromEnvVar
bool ParseArgsFromEnvVar( const char *progName, const char *varName, OptionSet *optSets[], NonOptionArgHandlerFunct nonOptArgHandler )
ParseArgsFromString
bool ParseArgsFromString( const char *progName, const char *argStr, OptionSet *optSets[], NonOptionArgHandlerFunct nonOptArgHandler, bool ignoreUnknown )
Parst eine Reihe von Argumenten aus einem bestimmten String.
ParseArgsFromString() teilt einen bestimmten String (argStr
) in einen Satz von Argumenten auf und parst die Argumente mithilfe der Funktion ParseArgs().
Details | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Parameter |
|
||||||||||
Rückgabe |
true , wenn alle Optionen und Nicht-Optionsargumente erfolgreich geparst wurden; false , wenn eine Option nicht erkannt wurde, eine der Handler-Funktionen fehlgeschlagen ist (d.h. eine der Handler-Funktionen zurückgegeben wurde) oder ein interner Fehler aufgetreten ist. |
Die Syntax der Eingabestrings ähnelt der Syntax des Unix-Shell-Befehls, jedoch mit einem vereinfachten Schema für die Anführungszeichen. Insbesondere:
- Argumente werden durch Leerzeichen getrennt, sofern sie nicht in Anführungszeichen gesetzt oder mit Escapezeichen versehen sind.
- Durch einen umgekehrten Schrägstrich wird das folgende Zeichen maskiert, sodass es als normales Zeichen behandelt wird. Der umgekehrte Schrägstrich wird entfernt.
- Teilstrings in einfachen oder doppelten Anführungszeichen beginnen bzw. enden in Anführungszeichen. Innerhalb eines Teilstrings sind die einzigen Sonderzeichen der umgekehrte Schrägstrich, mit dem das nächste Zeichen maskiert wird, sowie das entsprechende Anführungszeichen am Ende. Anführungszeichen am Anfang und Ende werden entfernt.
E.g.:
--listen --count 10 --sw-version '1.0 (DEVELOPMENT)' "--hostname=nest.com"
ParseArgsFromString
bool ParseArgsFromString( const char *progName, const char *argStr, OptionSet *optSets[], NonOptionArgHandlerFunct nonOptArgHandler )
ParseArgsFromString
bool ParseArgsFromString( const char *progName, const char *argStr, OptionSet *optSets[] )
ParseBoolean
bool ParseBoolean( const char *str, bool & output )
Parsen Sie einen String als booleschen Wert.
Diese Funktion akzeptiert die folgenden Eingabewerte (Groß-/Kleinschreibung wird nicht berücksichtigt): "true", "yes", "t", "y", "1", "false", "no", "f", "n", "0".
Details | |||||
---|---|---|---|---|---|
Parameter |
|
||||
Rückgabe |
"true" bei Erfolg oder "false" bei einem Fehler.
|
ParseFabricId
bool ParseFabricId( const char *str, uint64_t & fabricId, bool allowReserved )
Parst eine Weave-Fabric-ID in Textform.
Die Funktion ParseFabricId() akzeptiert eine im Hexadezimalformat angegebene 64-Bit-Fabric-ID mit oder ohne vorangestelltes „0x“.
Details | |||||||
---|---|---|---|---|---|---|---|
Parameter |
|
||||||
Rückgabe |
"true", wenn der Wert erfolgreich geparst wurde; andernfalls "false".
|
ParseHexString
bool ParseHexString( const char *hexStr, uint32_t strLen, uint8_t *outBuf, uint32_t outBufSize, uint32_t & outDataLen )
Parst einen String von Byte in Hexadezimalform.
ParseHexString() erwartet, dass die Eingabe in Form von Hexadezimalziffernpaaren (Groß- oder Kleinbuchstaben) erfolgt. Hexadezimalpaare können optional durch eines der folgenden Zeichen getrennt werden: Doppelpunkt, Semikolon, Komma, Punkt oder Bindestrich. Außerdem werden Leerzeichen an einer beliebigen Stelle im Eingabestring ignoriert.
Details | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Parameter |
|
||||||||||
Rückgabe |
„true“, wenn der Wert erfolgreich geparst wurde; „false“, wenn die Eingabedaten fehlerhaft sind oder wenn
outBuf zu klein ist. |
ParseIPAddress
bool ParseIPAddress( const char *str, IPAddress & output )
Parsen Sie eine IP-Adresse in Textform.
Details | |||||
---|---|---|---|---|---|
Parameter |
|
||||
Rückgabe |
"true", wenn der Wert erfolgreich geparst wurde; andernfalls "false".
|
ParseInt
bool ParseInt( const char *str, uint64_t & output, int base )
Parsen und versuchen, einen String in eine vorzeichenlose 64-Bit-Ganzzahl zu konvertieren, wobei die auf dem Basisparameter entsprechende Interpretation angewendet wird.
Details | |||||||
---|---|---|---|---|---|---|---|
Parameter |
|
||||||
Rückgabe |
"true" bei Erfolg oder "false" bei einem Fehler.
|
ParseInt
bool ParseInt( const char *str, uint32_t & output, int base )
Parsen und versuchen, einen String in eine vorzeichenlose 32-Bit-Ganzzahl zu konvertieren, wobei die auf dem Basisparameter entsprechende Interpretation angewendet wird.
Details | |||||||
---|---|---|---|---|---|---|---|
Parameter |
|
||||||
Rückgabe |
"true" bei Erfolg oder "false" bei einem Fehler.
|
ParseInt
bool ParseInt( const char *str, int32_t & output, int base )
Parsen und versuchen, einen String in eine 32-Bit-Ganzzahl mit Vorzeichen zu konvertieren, wobei die entsprechende Interpretation basierend auf dem Basisparameter angewendet wird.
Details | |||||||
---|---|---|---|---|---|---|---|
Parameter |
|
||||||
Rückgabe |
"true" bei Erfolg oder "false" bei einem Fehler.
|
ParseInt
bool ParseInt( const char *str, uint64_t & output )
Parsen und versuchen, einen String, der als Dezimalwert interpretiert wird, in eine vorzeichenlose 64-Bit-Ganzzahl umzuwandeln, wobei die auf dem Basisparameter entsprechende Interpretation angewendet wird.
Details | |||||
---|---|---|---|---|---|
Parameter |
|
||||
Rückgabe |
"true" bei Erfolg oder "false" bei einem Fehler.
|
ParseInt
bool ParseInt( const char *str, uint32_t & output )
Parsen und versuchen, einen String, der als Dezimalwert interpretiert wird, in eine vorzeichenlose 32-Bit-Ganzzahl umzuwandeln und die entsprechende Interpretation basierend auf dem Basisparameter anzuwenden.
Details | |||||
---|---|---|---|---|---|
Parameter |
|
||||
Rückgabe |
"true" bei Erfolg oder "false" bei einem Fehler.
|
ParseInt
bool ParseInt( const char *str, int32_t & output )
Parsen und versuchen, einen String, der als Dezimalwert interpretiert wird, in eine vorzeichenbehaftete 32-Bit-Ganzzahl umzuwandeln und die entsprechende Interpretation basierend auf dem Basisparameter anzuwenden.
Details | |||||
---|---|---|---|---|---|
Parameter |
|
||||
Rückgabe |
"true" bei Erfolg oder "false" bei einem Fehler.
|
ParseInt
bool ParseInt( const char *str, uint16_t & output )
Parsen und versuchen, einen String, der als Dezimalwert interpretiert wird, in eine vorzeichenlose 16-Bit-Ganzzahl umzuwandeln, wobei die auf dem Basisparameter entsprechende Interpretation angewendet wird.
Details | |||||
---|---|---|---|---|---|
Parameter |
|
||||
Rückgabe |
"true" bei Erfolg oder "false" bei einem Fehler.
|
ParseInt
bool ParseInt( const char *str, int16_t & output )
Parsen Sie einen String, der als Dezimalwert interpretiert wird, und wandeln Sie ihn in eine vorzeichenbehaftete 16-Bit-Ganzzahl um. Dabei wird die entsprechende Interpretation basierend auf dem Basisparameter angewendet.
Details | |||||
---|---|---|---|---|---|
Parameter |
|
||||
Rückgabe |
"true" bei Erfolg oder "false" bei einem Fehler.
|
ParseInt
bool ParseInt( const char *str, uint8_t & output )
Parsen und versuchen, einen String, der als Dezimalwert interpretiert wird, in eine vorzeichenlose 8-Bit-Ganzzahl umzuwandeln und die entsprechende Interpretation basierend auf dem Basisparameter anzuwenden.
Details | |||||
---|---|---|---|---|---|
Parameter |
|
||||
Rückgabe |
"true" bei Erfolg oder "false" bei einem Fehler.
|
ParseNodeId
bool ParseNodeId( const char *str, uint64_t & nodeId )
Parst eine Weave-Knoten-ID in Textform.
Die Funktion ParseNodeId() akzeptiert entweder eine im Hexadezimalformat angegebene 64-Bit-Knoten-ID (mit oder ohne vorangestelltes "0x") oder die Wörter "any" oder "all", die als Bedeutung der Any-Knoten-ID (0xFFFFFFFFFFFFFF) interpretiert werden.
Details | |||||
---|---|---|---|---|---|
Parameter |
|
||||
Rückgabe |
"true", wenn der Wert erfolgreich geparst wurde; andernfalls "false".
|
ParseSubnetId
bool ParseSubnetId( const char *str, uint16_t & subnetId )
Parsen und versuchen, einen String in eine vorzeichenlose 16-Bit-Subnetz-ID umzuwandeln, wobei der String als hexadezimal interpretiert wird.
Details | |||||
---|---|---|---|---|---|
Parameter |
|
||||
Rückgabe |
"true" bei Erfolg oder "false" bei einem Fehler.
|
PrintOptionHelp
void PrintOptionHelp( OptionSet *optSets[], FILE *s )
Gibt den Hilfetext für eine angegebene Liste von Optionen an einen Stream aus.
Details | |||||
---|---|---|---|---|---|
Parameter |
|
PutStringWithBlankLine
void PutStringWithBlankLine( FILE *s, const char *str )
PutStringWithNewLine
void PutStringWithNewLine( FILE *s, const char *str )
SplitArgs
int32_t SplitArgs( char *argStr, char **& argList, char *initialArg )