nl:: ArgParser
Riepilogo
Enumerazioni |
|
---|---|
OptionArgumentType
|
enum Definisce i requisiti di argomento per un'opzione della riga di comando. |
Typedef |
|
---|---|
NonOptionArgHandlerFunct)(const char *progName, int argc, char *argv[])
|
typedefbool(*
Funzione che può essere chiamata per gestire gli argomenti rimanenti della riga di comando non facoltativi. |
OptionHandlerFunct)(const char *progName, OptionSet *optSet, int id, const char *name, const char *arg)
|
typedefbool(*
Funzione che è possibile chiamare per gestire un insieme di opzioni della riga di comando. |
Variabili |
|
---|---|
PrintArgError = DefaultPrintArgError)(const char *msg,...)
|
void(*
Puntatore alla funzione utilizzato per stampare gli errori che si verificano durante l'analisi dell'argomento.
|
gActiveOptionSets = NULL
|
OptionSet **
L'elenco di opzioni passate alla chiamata ParseArgs() attualmente attiva.
|
Funzioni |
|
---|---|
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
Stampa un messaggio di errore associato all'analisi dell'argomento.
|
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
Analizza un insieme di argomenti in stile riga di comando, chiamando le funzioni di gestione per elaborare ogni opzione e ogni argomento non opzione.
|
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
Analizza un insieme di argomenti da una variabile di ambiente denominata.
|
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
Analizza un insieme di argomenti di una determinata stringa.
|
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
Analizza una stringa come valore booleano.
|
ParseFabricId(const char *str, uint64_t & fabricId, bool allowReserved)
|
bool
Analizza un ID tessuto Weave in formato testo.
|
ParseHexString(const char *hexStr, uint32_t strLen, uint8_t *outBuf, uint32_t outBufSize, uint32_t & outDataLen)
|
bool
Analizza una stringa di byte specificata in formato esadecimale.
|
ParseIPAddress(const char *str, IPAddress & output)
|
bool
Analizza un indirizzo IP in formato testo.
|
ParseInt(const char *str, uint64_t & output, int base)
|
bool
Analizza e tenta di convertire una stringa in un numero intero senza segno a 64 bit, applicando l'interpretazione appropriata in base al parametro di base.
|
ParseInt(const char *str, uint32_t & output, int base)
|
bool
Analizza e tenta di convertire una stringa in un numero intero senza segno a 32 bit, applicando l'interpretazione appropriata in base al parametro di base.
|
ParseInt(const char *str, int32_t & output, int base)
|
bool
Analizza e tenta di convertire una stringa in un numero intero con segno a 32 bit, applicando l'interpretazione appropriata in base al parametro di base.
|
ParseInt(const char *str, uint64_t & output)
|
bool
Analizza e tenta di convertire una stringa interpretata come un valore decimale in un numero intero senza segno a 64 bit, applicando l'interpretazione appropriata in base al parametro di base.
|
ParseInt(const char *str, uint32_t & output)
|
bool
Analizza e tenta di convertire una stringa interpretata come un valore decimale in un numero intero senza segno a 32 bit, applicando l'interpretazione appropriata in base al parametro di base.
|
ParseInt(const char *str, int32_t & output)
|
bool
Analizza e tenta di convertire una stringa interpretata come un valore decimale in un numero intero con segno a 32 bit, applicando l'interpretazione appropriata in base al parametro di base.
|
ParseInt(const char *str, uint16_t & output)
|
bool
Analizza e tenta di convertire una stringa interpretata come un valore decimale in un numero intero senza segno a 16 bit, applicando l'interpretazione appropriata in base al parametro di base.
|
ParseInt(const char *str, int16_t & output)
|
bool
Analizza e tenta di convertire una stringa interpretata come un valore decimale in un numero intero con segno a 16 bit, applicando l'interpretazione appropriata in base al parametro di base.
|
ParseInt(const char *str, uint8_t & output)
|
bool
Analizza e tenta di convertire una stringa interpretata come un valore decimale in un numero intero senza segno a 8 bit, applicando l'interpretazione appropriata in base al parametro di base.
|
ParseNodeId(const char *str, uint64_t & nodeId)
|
bool
Analizza un ID nodo Weave in formato testo.
|
ParseSubnetId(const char *str, uint16_t & subnetId)
|
bool
Analizza e tenta di convertire una stringa in un ID subnet senza segno a 16 bit, interpretando la stringa come esadecimale.
|
PrintOptionHelp(OptionSet *optSets[], FILE *s)
|
void
Stampa il testo della guida per un elenco specifico di opzioni per uno stream.
|
PutStringWithBlankLine(FILE *s, const char *str)
|
void
|
PutStringWithNewLine(FILE *s, const char *str)
|
void
|
SplitArgs(char *argStr, char **& argList, char *initialArg)
|
int32_t
|
Corsi |
|
---|---|
nl:: |
OptionSet comune per la gestione delle opzioni informative (guida, versione). |
nl:: |
Un elemento OptionSet in cui il gestore è una funzione virtuale. |
Strutture |
|
---|---|
nl:: |
Definisce un'opzione della riga di comando. |
nl:: |
Definisce un gruppo di opzioni della riga di comando correlate logicamente e riutilizzabili. |
Enumerazioni
OptionArgumentType
OptionArgumentType
Definisce i requisiti di argomento per un'opzione della riga di comando.
Typedef
NonOptionArgHandlerFunct
bool(* NonOptionArgHandlerFunct)(const char *progName, int argc, char *argv[])
Funzione che può essere chiamata per gestire gli argomenti rimanenti della riga di comando non facoltativi.
OptionHandlerFunct
bool(* OptionHandlerFunct)(const char *progName, OptionSet *optSet, int id, const char *name, const char *arg)
Funzione che è possibile chiamare per gestire un insieme di opzioni della riga di comando.
Variabili
PrintArgError
void(* PrintArgError)(const char *msg,...) = DefaultPrintArgError
Puntatore alla funzione utilizzato per stampare gli errori che si verificano durante l'analisi dell'argomento.
Le applicazioni dovrebbero chiamare PrintArgError() per segnalare errori nelle funzioni di gestione degli argomenti opzione e non opzione, anziché stampare direttamente su stdout/stderr.
Il valore predefinito è un puntatore alla funzione DefaultPrintArgError()
.
gActiveOptionSets
OptionSet ** gActiveOptionSets = NULL
L'elenco di opzioni passate alla chiamata ParseArgs() attualmente attiva.
Questo valore sarà NULL quando non è in corso alcuna chiamata a ParseArgs().
Funzioni
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, ... )
Stampa un messaggio di errore associato all'analisi dell'argomento.
Funzione predefinita utilizzata per stampare i messaggi di errore generati dall'analisi degli argomenti.
Dettagli | |||
---|---|---|---|
Parametri |
|
Le applicazioni devono chiamare tramite il puntatore della funzione PrintArgError, anziché chiamare direttamente questa funzione.
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 )
Analizza un insieme di argomenti in stile riga di comando, chiamando le funzioni di gestione per elaborare ogni opzione e ogni argomento non opzione.
ParseArgs() prende un elenco di argomenti (argv
) e li analizza in base a un insieme di definizioni di opzioni fornite. La funzione supporta le opzioni long (opt) e short (-o) e implementa la stessa sintassi delle opzioni della funzione GNU getopt_long(3).
Dettagli | |||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Parametri |
|
||||||||||||
Restituisce |
true se tutte le opzioni e tutti gli argomenti non-opzione sono stati analizzati correttamente; false se un'opzione non è stata riconosciuta o se una delle funzioni del gestore ha avuto esito negativo (ovvero ha restituito false). |
Le definizioni di opzione vengono passate a ParseArgs() sotto forma di array di strutture OptionSet (optSets
). Ogni OptionSet contiene un array di definizioni di opzioni e una funzione di gestore. ParseArgs() elabora gli argomenti delle opzioni nell'ordine specificato, richiamando la rispettiva funzione di gestore per ogni opzione riconosciuta. Dopo aver analizzato tutte le opzioni, viene richiamata una funzione separata del gestore senza opzioni (nonOptArgHandler
) per elaborare eventuali argomenti rimanenti.
SET DI OPZIONI
Un OptionSet contiene un insieme di definizioni di opzioni insieme a un puntatore a una funzione gestore che verrà richiamata quando viene rilevata una delle opzioni associate. I set di opzioni contengono inoltre testo della guida che descrive la sintassi e lo scopo di ciascuna opzione (consulta la GUIDA ALLE OPZIONI di seguito). Gli insiemi di opzioni sono progettati per consentire la creazione di raccolte riutilizzabili di opzioni correlate. In questo modo si semplifica l'impegno necessario per gestire più applicazioni che accettano opzioni simili (ad es. applicazioni di test).
Esistono due pattern per la definizione di optionSets; è possibile inizializzare un'istanza dello struct OptionSet stesso, ad esempio come globale statico, oppure la sottoclasse OptionSetBase e fornire un costruttore. La seconda utilizza una funzione HandleOption()
pura virtuale per delegare la gestione delle opzioni alla sottoclasse.
Gli elenchi di opzioni vengono passati alla funzione ParseArgs() come array di puntatori con terminazione NULL. 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)) { ... } }
DEFINIZIONI OPZIONE
Le opzioni vengono definite utilizzando la struttura OptionDef
. Le definizioni delle opzioni sono organizzate come un array di elementi OptionDef, dove ogni elemento contiene: il nome dell'opzione, un ID intero utilizzato per identificare l'opzione e se l'opzione prevede o consente un argomento. La fine dell'array di opzioni è segnalata da un campo Nome NULL. 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 } };
ID OPZIONI
Gli ID opzione identificano le opzioni del codice che le gestisce (la funzione OpzioneHandler). Gli ID opzione sono relativi al set di opzioni OptionSet in cui appaiono e possono quindi essere riutilizzati in diversi set di opzioni (tuttavia, vedi OPZIONI BREVE di seguito). È prassi comune far iniziare gli ID delle opzioni di numerazione da 1000, tuttavia è possibile utilizzare qualsiasi numero maggiore di 128. Le opzioni di alias possono essere create utilizzando lo stesso ID opzione con nomi diversi per le opzioni.
OPZIONI BREVE
A differenza di getopt_long(3), ParseArgs() non prende una stringa separata che specifica l'elenco di caratteri di opzione brevi. Piuttosto, qualsiasi opzione il cui valore ID rientra nell'intervallo di caratteri ASCII grafici consente di utilizzare quel carattere come opzione breve.
ParseArgs() richiede che i caratteri di opzione brevi siano univoci in tutti gli OpzioneSet. Per questo motivo, è sconsigliato utilizzare opzioni brevi per gli optionSet condivisi tra programmi, a causa della notevole probabilità di collisioni. I caratteri delle opzioni brevi possono essere riutilizzati all'interno di un singolo OptionSet per consentire la creazione di nomi di opzioni lunghi alias.
GUIDA PER L'OPZIONE
Ogni OptionSet contiene una stringa OptionHelp
che descrive lo scopo e la sintassi delle opzioni associate. Queste stringhe vengono utilizzate dalla funzione PrintOptionHelp()
per generare informazioni sull'utilizzo delle opzioni.
Per convenzione, le stringhe della guida per le opzioni consistono in un esempio di sintassi seguito da una descrizione testuale dell'opzione. Se l'opzione ha una versione breve o un nome alias, questo verrà fornito prima del nome lungo principale. Per coerenza, il rientro delle righe di sintassi è di 2 spazi, mentre quello delle righe descrittive di 7 spazi. Una riga vuota segue la descrizione di ogni opzione, inclusa l'ultima.
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";
OPZIONE GRUPPI DI GUIDA
I set di opzioni contengono una stringa HelpGroupName
che viene utilizzata per raggruppare le opzioni nell'output della guida. La funzione PrintOptionHelp()
utilizza HelpGroupName come titolo di sezione nell'output di utilizzo generato. Se più opzioni hanno lo stesso HelpGroupName, PrintOptionHelp() stamperà la guida per le diverse opzioni con un titolo di sezione comune.
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 )
Analizza un insieme di argomenti da una variabile di ambiente denominata.
ParseArgsFromEnvVar() legge una variabile di ambiente denominata e passa il valore a ParseArgsFromString()
per l'analisi. Se la variabile di ambiente non è impostata, la funzione non esegue alcuna azione.
Dettagli | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Parametri |
|
||||||||||
Restituisce |
true se tutte le opzioni e tutti gli argomenti diversi dalle opzioni sono stati analizzati correttamente o se la variabile di ambiente specificata non è impostata; false se un'opzione non è stata riconosciuta, se una delle funzioni del gestore non è riuscita (ovvero è stata restituita una risposta false) o se si è verificato un errore interno. |
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 )
Analizza un insieme di argomenti di una determinata stringa.
ParseArgsFromString() suddivide una determinata stringa (argStr
) in un insieme di argomenti e analizza gli argomenti utilizzando la funzione ParseArgs().
Dettagli | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Parametri |
|
||||||||||
Restituisce |
true se tutte le opzioni e gli argomenti diversi dalle opzioni sono stati analizzati correttamente; false se un'opzione non è stata riconosciuta, se una delle funzioni del gestore non è riuscita (ovvero ha restituito false) o se si è verificato un errore interno. |
La sintassi delle stringhe di input è simile a quella del comando shell di Unix, ma con uno schema di citazione semplificato. In particolare:
- Gli argomenti sono delimitati da spazi vuoti, a meno che non siano presenti virgolette o caratteri di escape.
- La barra rovesciata fa precedere da una barra rovesciata il carattere seguente e, di conseguenza, viene considerato un carattere normale. La barra rovesciata viene rimossa.
- Sottostringhe racchiuse tra virgolette singole o doppie. All'interno di una sottostringa, gli unici caratteri speciali sono la barra rovesciata, che sottopone a escape il carattere successivo e le virgolette finali corrispondenti. Le virgolette di inizio/fine vengono eliminate.
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 )
Analizza una stringa come valore booleano.
Questa funzione accetta i seguenti valori di input (senza distinzione tra maiuscole e minuscole): "true", "yes", "t", "y", "1", "false", "no", "f", "n", "0".
Dettagli | |||||
---|---|---|---|---|---|
Parametri |
|
||||
Restituisce |
true in caso di successo; altrimenti, false in caso di fallimento.
|
ParseFabricId
bool ParseFabricId( const char *str, uint64_t & fabricId, bool allowReserved )
Analizza un ID tessuto Weave in formato testo.
La funzione ParseFabricId() accetta un ID fabric a 64 bit fornito in formato esadecimale, con o senza "0x" iniziale.
Dettagli | |||||||
---|---|---|---|---|---|---|---|
Parametri |
|
||||||
Restituisce |
true se il valore è stato analizzato correttamente; false in caso contrario.
|
ParseHexString
bool ParseHexString( const char *hexStr, uint32_t strLen, uint8_t *outBuf, uint32_t outBufSize, uint32_t & outDataLen )
Analizza una stringa di byte specificata in formato esadecimale.
ParseHexString() prevede che l'input sia sotto forma di coppie di cifre esadecimali (maiuscole o minuscole). Le coppie esadecimali possono essere facoltativamente separate da uno dei seguenti caratteri: due punti, punto e virgola, virgola, punto o trattino. Inoltre, gli spazi vuoti in qualsiasi punto della stringa di input vengono ignorati.
Dettagli | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Parametri |
|
||||||||||
Restituisce |
true se il valore è stato analizzato correttamente; false se i dati di input non sono corretti o se
outBuf è troppo piccolo. |
ParseIPAddress
bool ParseIPAddress( const char *str, IPAddress & output )
Analizza un indirizzo IP in formato testo.
Dettagli | |||||
---|---|---|---|---|---|
Parametri |
|
||||
Restituisce |
true se il valore è stato analizzato correttamente; false in caso contrario.
|
ParseInt
bool ParseInt( const char *str, uint64_t & output, int base )
Analizza e tenta di convertire una stringa in un numero intero senza segno a 64 bit, applicando l'interpretazione appropriata in base al parametro di base.
Dettagli | |||||||
---|---|---|---|---|---|---|---|
Parametri |
|
||||||
Restituisce |
true in caso di successo; altrimenti, false in caso di fallimento.
|
ParseInt
bool ParseInt( const char *str, uint32_t & output, int base )
Analizza e tenta di convertire una stringa in un numero intero senza segno a 32 bit, applicando l'interpretazione appropriata in base al parametro di base.
Dettagli | |||||||
---|---|---|---|---|---|---|---|
Parametri |
|
||||||
Restituisce |
true in caso di successo; altrimenti, false in caso di fallimento.
|
ParseInt
bool ParseInt( const char *str, int32_t & output, int base )
Analizza e tenta di convertire una stringa in un numero intero con segno a 32 bit, applicando l'interpretazione appropriata in base al parametro di base.
Dettagli | |||||||
---|---|---|---|---|---|---|---|
Parametri |
|
||||||
Restituisce |
true in caso di successo; altrimenti, false in caso di fallimento.
|
ParseInt
bool ParseInt( const char *str, uint64_t & output )
Analizza e tenta di convertire una stringa interpretata come un valore decimale in un numero intero senza segno a 64 bit, applicando l'interpretazione appropriata in base al parametro di base.
Dettagli | |||||
---|---|---|---|---|---|
Parametri |
|
||||
Restituisce |
true in caso di successo; altrimenti, false in caso di fallimento.
|
ParseInt
bool ParseInt( const char *str, uint32_t & output )
Analizza e tenta di convertire una stringa interpretata come un valore decimale in un numero intero senza segno a 32 bit, applicando l'interpretazione appropriata in base al parametro di base.
Dettagli | |||||
---|---|---|---|---|---|
Parametri |
|
||||
Restituisce |
true in caso di successo; altrimenti, false in caso di fallimento.
|
ParseInt
bool ParseInt( const char *str, int32_t & output )
Analizza e tenta di convertire una stringa interpretata come un valore decimale in un numero intero con segno a 32 bit, applicando l'interpretazione appropriata in base al parametro di base.
Dettagli | |||||
---|---|---|---|---|---|
Parametri |
|
||||
Restituisce |
true in caso di successo; altrimenti, false in caso di fallimento.
|
ParseInt
bool ParseInt( const char *str, uint16_t & output )
Analizza e tenta di convertire una stringa interpretata come un valore decimale in un numero intero senza segno a 16 bit, applicando l'interpretazione appropriata in base al parametro di base.
Dettagli | |||||
---|---|---|---|---|---|
Parametri |
|
||||
Restituisce |
true in caso di successo; altrimenti, false in caso di fallimento.
|
ParseInt
bool ParseInt( const char *str, int16_t & output )
Analizza e tenta di convertire una stringa interpretata come un valore decimale in un numero intero con segno a 16 bit, applicando l'interpretazione appropriata in base al parametro di base.
Dettagli | |||||
---|---|---|---|---|---|
Parametri |
|
||||
Restituisce |
true in caso di successo; altrimenti, false in caso di fallimento.
|
ParseInt
bool ParseInt( const char *str, uint8_t & output )
Analizza e tenta di convertire una stringa interpretata come un valore decimale in un numero intero senza segno a 8 bit, applicando l'interpretazione appropriata in base al parametro di base.
Dettagli | |||||
---|---|---|---|---|---|
Parametri |
|
||||
Restituisce |
true in caso di successo; altrimenti, false in caso di fallimento.
|
ParseNodeId
bool ParseNodeId( const char *str, uint64_t & nodeId )
Analizza un ID nodo Weave in formato testo.
La funzione ParseNodeId() accetta un ID nodo a 64 bit fornito in formato esadecimale (con o senza uno "0x" iniziale) o le parole "any" o "all" che vengono interpretate come significato dell'ID nodo Any (0xFFFFFFFFFFFFFFFF).
Dettagli | |||||
---|---|---|---|---|---|
Parametri |
|
||||
Restituisce |
true se il valore è stato analizzato correttamente; false in caso contrario.
|
ParseSubnetId
bool ParseSubnetId( const char *str, uint16_t & subnetId )
Analizza e tenta di convertire una stringa in un ID subnet senza segno a 16 bit, interpretando la stringa come esadecimale.
Dettagli | |||||
---|---|---|---|---|---|
Parametri |
|
||||
Restituisce |
true in caso di successo; altrimenti, false in caso di fallimento.
|
PrintOptionHelp
void PrintOptionHelp( OptionSet *optSets[], FILE *s )
Stampa il testo della guida per un elenco specifico di opzioni per uno stream.
Dettagli | |||||
---|---|---|---|---|---|
Parametri |
|
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 )