nl:: ArgParser
Podsumowanie
Wyliczenia |
|
---|---|
OptionArgumentType
|
enum | typ wyliczeniowy Określa wymagania dotyczące argumentów opcji wiersza poleceń. |
Definicje typów |
|
---|---|
NonOptionArgHandlerFunct)(const char *progName, int argc, char *argv[])
|
typedefbool(*
Funkcja, która może zostać wywołana w celu obsługi wszelkich pozostałych argumentów wiersza poleceń, które nie są opcjami. |
OptionHandlerFunct)(const char *progName, OptionSet *optSet, int id, const char *name, const char *arg)
|
typedefbool(*
Funkcja, którą można wywołać w celu obsługi zestawu opcji wiersza poleceń. |
Zmienne |
|
---|---|
PrintArgError = DefaultPrintArgError)(const char *msg,...)
|
void(*
Wskaźnik służący do drukowania błędów występujących podczas analizy argumentu.
|
gActiveOptionSets = NULL
|
OptionSet **
Lista obiektów OptionSet przekazanych obecnie do aktywnego wywołania ParseArgs().
|
Funkcje |
|
---|---|
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
Wydrukuj komunikat o błędzie związany z analizą argumentów.
|
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
Analizuj zestaw argumentów w stylu wiersza poleceń, wywołując funkcje obsługi w celu przetworzenia każdej opcji i argumentu niebędącego opcją.
|
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
Analizuj zestaw argumentów z nazwanej zmiennej środowiskowej.
|
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
Analizuj zestaw argumentów z danego ciągu znaków.
|
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
Przeanalizuj ciąg znaków jako wartość logiczną.
|
ParseFabricId(const char *str, uint64_t & fabricId, bool allowReserved)
|
bool
Przeanalizuj identyfikator tkaniny Weave w formie tekstowej.
|
ParseHexString(const char *hexStr, uint32_t strLen, uint8_t *outBuf, uint32_t outBufSize, uint32_t & outDataLen)
|
bool
Przeanalizuj ciąg bajtów podany w postaci szesnastkowej.
|
ParseIPAddress(const char *str, IPAddress & output)
|
bool
Analizuj adres IP w formie tekstowej.
|
ParseInt(const char *str, uint64_t & output, int base)
|
bool
Przeprowadź analizę i spróbuj przekonwertować ciąg znaków na 64-bitową nieoznaczoną liczbę całkowitą, stosując odpowiednią interpretację na podstawie parametru podstawowego.
|
ParseInt(const char *str, uint32_t & output, int base)
|
bool
Przeprowadź analizę i spróbuj przekonwertować ciąg znaków na 32-bitową nieoznaczoną liczbę całkowitą, stosując odpowiednią interpretację na podstawie parametru podstawowego.
|
ParseInt(const char *str, int32_t & output, int base)
|
bool
Przeprowadź analizę i spróbuj przekonwertować ciąg na 32-bitową liczbę całkowitą ze znakiem, stosując odpowiednią interpretację na podstawie parametru podstawowego.
|
ParseInt(const char *str, uint64_t & output)
|
bool
Przeanalizuj i spróbuj przekonwertować ciąg znaków interpretowany jako wartość dziesiętną na 64-bitową nieoznaczoną liczbę całkowitą, stosując odpowiednią interpretację na podstawie parametru podstawowego.
|
ParseInt(const char *str, uint32_t & output)
|
bool
Przeanalizuj i spróbuj przekonwertować ciąg znaków interpretowany jako wartość dziesiętną na 32-bitową nieoznaczoną liczbę całkowitą, stosując odpowiednią interpretację na podstawie parametru podstawowego.
|
ParseInt(const char *str, int32_t & output)
|
bool
Przeanalizuj i spróbuj przekonwertować ciąg znaków interpretowany jako wartość dziesiętna na 32-bitową liczbę całkowitą ze znakiem, stosując odpowiednią interpretację na podstawie parametru podstawowego.
|
ParseInt(const char *str, uint16_t & output)
|
bool
Przeanalizuj i spróbuj przekonwertować ciąg znaków interpretowany jako wartość dziesiętną na 16-bitową nieoznaczoną liczbę całkowitą, stosując odpowiednią interpretację na podstawie parametru podstawowego.
|
ParseInt(const char *str, int16_t & output)
|
bool
Przeanalizuj i spróbuj przekonwertować ciąg znaków interpretowany jako wartość dziesiętną na 16-bitową liczbę całkowitą ze znakiem, stosując odpowiednią interpretację na podstawie parametru podstawowego.
|
ParseInt(const char *str, uint8_t & output)
|
bool
Przeanalizuj i spróbuj przekonwertować ciąg znaków interpretowany jako wartość dziesiętną na 8-bitową nieoznaczoną liczbę całkowitą, stosując odpowiednią interpretację na podstawie parametru podstawowego.
|
ParseNodeId(const char *str, uint64_t & nodeId)
|
bool
Przeanalizuj identyfikator węzła Weave w formie tekstowej.
|
ParseSubnetId(const char *str, uint16_t & subnetId)
|
bool
Przeanalizuj i spróbuj przekonwertować ciąg znaków na 16-bitowy niepodpisany identyfikator podsieci, interpretując ciąg jako wartość szesnastkową.
|
PrintOptionHelp(OptionSet *optSets[], FILE *s)
|
void
Wydrukuj tekst pomocy dotyczący określonej listy opcji w strumieniu.
|
PutStringWithBlankLine(FILE *s, const char *str)
|
void
|
PutStringWithNewLine(FILE *s, const char *str)
|
void
|
SplitArgs(char *argStr, char **& argList, char *initialArg)
|
int32_t
|
Zajęcia |
|
---|---|
nl:: |
Wspólna wartość OptionSet do obsługi opcji informacyjnych (pomoc, wersja). |
nl:: |
Obiekt OptionSet, w którym moduł obsługi jest funkcją wirtualną. |
Konstrukcja |
|
---|---|
nl:: |
Definiuje opcję wiersza poleceń. |
nl:: |
Definiuje grupę powiązanych logicznie opcji wiersza poleceń wielokrotnego użytku. |
Wyliczenia
OptionArgumentType
OptionArgumentType
Określa wymagania dotyczące argumentów opcji wiersza poleceń.
Definicje typów
NonOptionArgHandlerFunct
bool(* NonOptionArgHandlerFunct)(const char *progName, int argc, char *argv[])
Funkcja, która może zostać wywołana w celu obsługi wszelkich pozostałych argumentów wiersza poleceń, które nie są opcjami.
OptionHandlerFunct
bool(* OptionHandlerFunct)(const char *progName, OptionSet *optSet, int id, const char *name, const char *arg)
Funkcja, którą można wywołać w celu obsługi zestawu opcji wiersza poleceń.
Zmienne
PrintArgError
void(* PrintArgError)(const char *msg,...) = DefaultPrintArgError
Wskaźnik służący do drukowania błędów występujących podczas analizy argumentu.
Aplikacje powinny wywoływać funkcję PrintArgError() w celu zgłoszenia błędów w funkcjach obsługi argumentów opcji i innych argumentów, a nie bezpośrednio drukować przy użyciu metody stdout/stderr.
Domyślnie jest to wskaźnik do funkcji DefaultPrintArgError()
.
gActiveOptionSets
OptionSet ** gActiveOptionSets = NULL
Lista obiektów OptionSet przekazanych obecnie do aktywnego wywołania ParseArgs().
Jeśli nie jest wykonywane żadne wywołanie ParseArgs(), ta wartość będzie miała wartość NULL.
Funkcje
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, ... )
Wydrukuj komunikat o błędzie związany z analizą argumentów.
Domyślna funkcja używana do drukowania komunikatów o błędach, które pojawiają się w wyniku analizy argumentów.
Szczegóły | |||
---|---|---|---|
Parametry |
|
Aplikacje powinny wywoływać wskaźnik funkcji PrintArgError, zamiast wywoływać tę funkcję bezpośrednio.
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 )
Analizuj zestaw argumentów w stylu wiersza poleceń, wywołując funkcje obsługi w celu przetworzenia każdej opcji i argumentu niebędącego opcją.
Funkcja ParseArgs() pobiera listę argumentów (argv
) i analizuje je zgodnie z zestawem podanych definicji opcji. Funkcja obsługuje zarówno opcje długie (opt), jak i krótkie (-o) oraz implementuje taką samą składnię opcji jak w przypadku funkcji GNU getopt_long(3).
Szczegóły | |||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Parametry |
|
||||||||||||
Zwroty |
true , jeśli wszystkie opcje i argumenty inne niż opcje zostały przeanalizowane; false , jeśli opcja nie została rozpoznana lub jedna z funkcji modułu obsługi zakończyła się niepowodzeniem (czyli zwróciła wartość „fałsz”). |
Definicje opcji są przekazywane do ParseArgs() w postaci tablicy struktur OptionSet (optSets
). Każdy element OptionSet zawiera tablicę definicji opcji oraz funkcję obsługi. ParseArgs() przetwarza argumenty opcji w podanej kolejności, wywołując odpowiednią funkcję obsługi dla każdej rozpoznanej opcji. Po przeanalizowaniu wszystkich opcji jednokrotnie wywoływana jest osobna funkcja obsługi niebędąca opcją (nonOptArgHandler
), aby przetworzyć pozostałe argumenty.
ZBIORY OPCJI
Element OptionSet zawiera zestaw definicji opcji wraz ze wskaźnikiem do funkcji obsługi, która jest wywoływana po napotkaniu jednej z powiązanych opcji. Zestawy opcji zawierają też tekst pomocy opisujący składnię i przeznaczenie poszczególnych opcji (patrz POMOC poniżej). Zestawy opcji umożliwiają tworzenie kolekcji powiązanych opcji do wielokrotnego użytku. Ułatwia to obsługę wielu aplikacji, które akceptują podobne opcje (np. aplikacje testowe).
Istnieją 2 wzorce do definiowania OptionSetsone, które mogą zainicjować instancję konstrukcji OptionSet, np. jako globalną statyczną, lub podklasę OptionSetBase i udostępnić konstruktor. Wykorzystuje ona czystą wirtualną funkcję HandleOption()
do delegowania obsługi opcji do podklasy.
Listy pozycji OptionSet są przekazywane do funkcji ParseArgs() jako tablica wskaźników z wartością 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)) { ... } }
DEFINICJE OPCJI
Opcje definiuje się za pomocą struktury OptionDef
. Definicje opcji mają postać tablicy elementów OptionDef, w której każdy element zawiera: nazwę opcji, liczbę całkowitą służącą do jej zidentyfikowania oraz informację o tym, czy dana opcja oczekuje lub zezwala na argument. Koniec tablicy opcji jest sygnalizowany przez pole Nazwa o wartości 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 } };
IDENTYFIKATORY OPCJI
Identyfikatory opcji określają opcje w kodzie, który je obsługuje (funkcja OptionHandler). Identyfikatory opcji odnoszą się do elementu OptionSet, w którym się pojawiają, i dlatego można ich używać ponownie w różnych parametrach OptionSet (jednak patrz KRÓTKIE OPCJE poniżej). Zazwyczaj identyfikatory opcji numerowania zaczynają się od 1000, ale można użyć dowolnej liczby > 128. Opcje aliasów możesz utworzyć, korzystając z tego samego identyfikatora opcji z różnymi nazwami opcji.
OPCJE KRÓTKIE
W przeciwieństwie do getopt_long(3) funkcja ParseArgs() nie pobiera osobnego ciągu tekstowego zawierającego listę krótkich znaków opcji. Dowolna opcja, której wartość identyfikatora mieści się w zakresie graficznych znaków ASCII, umożliwia użycie tego znaku jako krótkiej opcji.
Funkcja ParseArgs() wymaga, aby krótkie znaki opcji były niepowtarzalne we wszystkich elementach OptionSet. Z tego względu odradzamy stosowanie krótkich opcji w przypadku korzystania z zbiorów OptionSets współdzielonych przez różne programy ze względu na wysokie ryzyko kolizji. Krótkich znaków opcji można używać w pojedynczym elemencie OptionSet, aby tworzyć długie aliasy nazw opcji.
POMOC DOTYCZĄCA OPCJI
Każdy element OptionSet zawiera ciąg znaków OptionHelp
opisujący przeznaczenie i składnię powiązanych opcji. Funkcja PrintOptionHelp()
służy do generowania informacji o użyciu opcji.
Zgodnie z konwencją ciągi pomocy dotyczące opcji składają się z przykładowej składni, po której następuje jej opis tekstowy. Jeśli opcja ma krótką wersję lub nazwę aliasu, jest ona podana przed podstawową długą nazwą. Aby zachować spójność, wiersze składni są wcięte po 2 spacjami, a linie tekstu – po 7 spacji. Po każdym opisie opcji, w tym ostatnim, znajduje się jeden pusty wiersz.
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";
GRUPY POMOCY OPCJI
Zestawy OptionSets zawierają ciąg znaków HelpGroupName
, który służy do grupowania opcji w danych wyjściowych pomocy. Funkcja PrintOptionHelp()
używa nazwy Grupy Pomocy jako tytułu sekcji w wygenerowanych danych wyjściowych dotyczących użycia. Jeśli wiele parametrów OptionSet ma tę samą nazwę HelpGroupName, funkcja PrintOptionHelp() wyświetla pomoc dotyczącą różnych OptionSets razem pod wspólnym tytułem sekcji.
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 )
Analizuj zestaw argumentów z nazwanej zmiennej środowiskowej.
Funkcja ParseArgsFromEnvVar() odczytuje nazwaną zmienną środowiskową i przekazuje wartość do funkcji ParseArgsFromString()
w celu przeanalizowania. Jeśli zmienna środowiskowa nie jest ustawiona, funkcja nie robi nic.
Szczegóły | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Parametry |
|
||||||||||
Zwroty |
true , jeśli wszystkie opcje i argumenty inne niż opcje zostały przeanalizowane lub określona zmienna środowiskowa nie jest ustawiona; false , jeśli opcja nie została rozpoznana, jeśli jedna z funkcji obsługi zakończyła się niepowodzeniem (zwrócono wartość fałsz) lub wystąpił błąd wewnętrzny. |
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 )
Analizuj zestaw argumentów z danego ciągu znaków.
Funkcja ParseArgsFromString() dzieli dany ciąg (argStr
) na zestaw argumentów i analizuje argumenty przy użyciu funkcji ParseArgs().
Szczegóły | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Parametry |
|
||||||||||
Zwroty |
true , jeśli udało się przeanalizować wszystkie opcje i argumenty inne niż opcje; false , jeśli opcja nie została rozpoznana, jeśli jedna z funkcji modułu obsługi zakończyła się niepowodzeniem (zwrócono wartość fałsz) lub wystąpił błąd wewnętrzny. |
Składnia ciągów wejściowych jest podobna do składni poleceń powłoki w systemie uniksowym, ale z uproszczonym schematem cudzysłowu. Oto najważniejsze kwestie:
- Argumenty są rozdzielane spacjami, chyba że odstępy są ujęte w cudzysłowy lub znaki zmiany znaczenia.
- Ukośnik lewy zmienia znaczenie następnego znaku, przez co jest on traktowany jak zwykły znak. Ukośnik lewy jest usuwany.
- Podłańcuchy ujęte w pojedynczym lub podwójnym cudzysłowie na początku/końcu. W podłańcuchu jedyne znaki specjalne to ukośnik lewy, który zmienia znaczenie następnego znaku, i odpowiadający mu końcowy cudzysłów. Znaki cudzysłowu początkowego i końcowego są obcięte.
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 )
Przeanalizuj ciąg znaków jako wartość logiczną.
Ta funkcja akceptuje następujące wartości wejściowe (wielkość liter nie ma znaczenia): „true”, „yes”, „t”, „y”, „1”, „false”, „no”, „f”, „n”, „0”.
Szczegóły | |||||
---|---|---|---|---|---|
Parametry |
|
||||
Zwroty |
„true” w przypadku sukcesu; w przeciwnym razie „false” (fałsz) w przypadku niepowodzenia.
|
ParseFabricId
bool ParseFabricId( const char *str, uint64_t & fabricId, bool allowReserved )
Przeanalizuj identyfikator tkaniny Weave w formie tekstowej.
Funkcja ParseFabricId() akceptuje 64-bitowy identyfikator tkaniny podany w formacie szesnastkowym z początkowym znakiem „0x” lub bez niego.
Szczegóły | |||||||
---|---|---|---|---|---|---|---|
Parametry |
|
||||||
Zwroty |
Wartość „true” (prawda), jeśli wartość została prawidłowo przeanalizowana, lub „false” (fałsz), jeśli nie została przeanalizowana.
|
ParseHexString
bool ParseHexString( const char *hexStr, uint32_t strLen, uint8_t *outBuf, uint32_t outBufSize, uint32_t & outDataLen )
Przeanalizuj ciąg bajtów podany w postaci szesnastkowej.
Funkcja ParseHexString() wymaga, aby dane wejściowe miały postać par cyfr szesnastkowych (wielkimi lub małymi). Pary szesnastkowe mogą być opcjonalnie rozdzielone tymi znakami: dwukropek, średnik, przecinek, kropka lub łącznik. Oprócz tego odstępy w ciągu tekstowym będą ignorowane.
Szczegóły | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Parametry |
|
||||||||||
Zwroty |
Wartość true, jeśli wartość została przeanalizowana, lub false, jeśli dane wejściowe mają nieprawidłowy format lub jeśli
outBuf jest zbyt mały. |
ParseIPAddress
bool ParseIPAddress( const char *str, IPAddress & output )
Analizuj adres IP w formie tekstowej.
Szczegóły | |||||
---|---|---|---|---|---|
Parametry |
|
||||
Zwroty |
Wartość „true” (prawda), jeśli wartość została prawidłowo przeanalizowana, lub „false” (fałsz), jeśli nie została przeanalizowana.
|
ParseInt
bool ParseInt( const char *str, uint64_t & output, int base )
Przeprowadź analizę i spróbuj przekonwertować ciąg znaków na 64-bitową nieoznaczoną liczbę całkowitą, stosując odpowiednią interpretację na podstawie parametru podstawowego.
Szczegóły | |||||||
---|---|---|---|---|---|---|---|
Parametry |
|
||||||
Zwroty |
„true” w przypadku sukcesu; w przeciwnym razie „false” (fałsz) w przypadku niepowodzenia.
|
ParseInt
bool ParseInt( const char *str, uint32_t & output, int base )
Przeprowadź analizę i spróbuj przekonwertować ciąg znaków na 32-bitową nieoznaczoną liczbę całkowitą, stosując odpowiednią interpretację na podstawie parametru podstawowego.
Szczegóły | |||||||
---|---|---|---|---|---|---|---|
Parametry |
|
||||||
Zwroty |
„true” w przypadku sukcesu; w przeciwnym razie „false” (fałsz) w przypadku niepowodzenia.
|
ParseInt
bool ParseInt( const char *str, int32_t & output, int base )
Przeprowadź analizę i spróbuj przekonwertować ciąg na 32-bitową liczbę całkowitą ze znakiem, stosując odpowiednią interpretację na podstawie parametru podstawowego.
Szczegóły | |||||||
---|---|---|---|---|---|---|---|
Parametry |
|
||||||
Zwroty |
„true” w przypadku sukcesu; w przeciwnym razie „false” (fałsz) w przypadku niepowodzenia.
|
ParseInt
bool ParseInt( const char *str, uint64_t & output )
Przeanalizuj i spróbuj przekonwertować ciąg znaków interpretowany jako wartość dziesiętną na 64-bitową nieoznaczoną liczbę całkowitą, stosując odpowiednią interpretację na podstawie parametru podstawowego.
Szczegóły | |||||
---|---|---|---|---|---|
Parametry |
|
||||
Zwroty |
„true” w przypadku sukcesu; w przeciwnym razie „false” (fałsz) w przypadku niepowodzenia.
|
ParseInt
bool ParseInt( const char *str, uint32_t & output )
Przeanalizuj i spróbuj przekonwertować ciąg znaków interpretowany jako wartość dziesiętną na 32-bitową nieoznaczoną liczbę całkowitą, stosując odpowiednią interpretację na podstawie parametru podstawowego.
Szczegóły | |||||
---|---|---|---|---|---|
Parametry |
|
||||
Zwroty |
„true” w przypadku sukcesu; w przeciwnym razie „false” (fałsz) w przypadku niepowodzenia.
|
ParseInt
bool ParseInt( const char *str, int32_t & output )
Przeanalizuj i spróbuj przekonwertować ciąg znaków interpretowany jako wartość dziesiętna na 32-bitową liczbę całkowitą ze znakiem, stosując odpowiednią interpretację na podstawie parametru podstawowego.
Szczegóły | |||||
---|---|---|---|---|---|
Parametry |
|
||||
Zwroty |
„true” w przypadku sukcesu; w przeciwnym razie „false” (fałsz) w przypadku niepowodzenia.
|
ParseInt
bool ParseInt( const char *str, uint16_t & output )
Przeanalizuj i spróbuj przekonwertować ciąg znaków interpretowany jako wartość dziesiętną na 16-bitową nieoznaczoną liczbę całkowitą, stosując odpowiednią interpretację na podstawie parametru podstawowego.
Szczegóły | |||||
---|---|---|---|---|---|
Parametry |
|
||||
Zwroty |
„true” w przypadku sukcesu; w przeciwnym razie „false” (fałsz) w przypadku niepowodzenia.
|
ParseInt
bool ParseInt( const char *str, int16_t & output )
Przeanalizuj i spróbuj przekonwertować ciąg znaków interpretowany jako wartość dziesiętną na 16-bitową liczbę całkowitą ze znakiem, stosując odpowiednią interpretację na podstawie parametru podstawowego.
Szczegóły | |||||
---|---|---|---|---|---|
Parametry |
|
||||
Zwroty |
„true” w przypadku sukcesu; w przeciwnym razie „false” (fałsz) w przypadku niepowodzenia.
|
ParseInt
bool ParseInt( const char *str, uint8_t & output )
Przeanalizuj i spróbuj przekonwertować ciąg znaków interpretowany jako wartość dziesiętną na 8-bitową nieoznaczoną liczbę całkowitą, stosując odpowiednią interpretację na podstawie parametru podstawowego.
Szczegóły | |||||
---|---|---|---|---|---|
Parametry |
|
||||
Zwroty |
„true” w przypadku sukcesu; w przeciwnym razie „false” (fałsz) w przypadku niepowodzenia.
|
ParseNodeId
bool ParseNodeId( const char *str, uint64_t & nodeId )
Przeanalizuj identyfikator węzła Weave w formie tekstowej.
Funkcja ParseNodeId() akceptuje 64-bitowy identyfikator węzła podany w formacie szesnastkowym (z znakiem „0x” lub bez niego) albo słowa „any” lub „all”, które są interpretowane jako identyfikator dowolnego węzła (0xFFFFFFFFFFFFFFFF).
Szczegóły | |||||
---|---|---|---|---|---|
Parametry |
|
||||
Zwroty |
Wartość „true” (prawda), jeśli wartość została prawidłowo przeanalizowana, lub „false” (fałsz), jeśli nie została przeanalizowana.
|
ParseSubnetId
bool ParseSubnetId( const char *str, uint16_t & subnetId )
Przeanalizuj i spróbuj przekonwertować ciąg znaków na 16-bitowy niepodpisany identyfikator podsieci, interpretując ciąg jako wartość szesnastkową.
Szczegóły | |||||
---|---|---|---|---|---|
Parametry |
|
||||
Zwroty |
„true” w przypadku sukcesu; w przeciwnym razie „false” (fałsz) w przypadku niepowodzenia.
|
PrintOptionHelp
void PrintOptionHelp( OptionSet *optSets[], FILE *s )
Wydrukuj tekst pomocy dotyczący określonej listy opcji w strumieniu.
Szczegóły | |||||
---|---|---|---|---|---|
Parametry |
|
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 )