nl:: ArgParser
Résumé
Énumérations |
|
---|---|
OptionArgumentType
|
énum Définit les conditions requises pour les arguments pour une option de ligne de commande. |
Typedefs |
|
---|---|
NonOptionArgHandlerFunct)(const char *progName, int argc, char *argv[])
|
typedefbool(*
Fonction pouvant être appelée pour gérer tout argument de ligne de commande non-option restant. |
OptionHandlerFunct)(const char *progName, OptionSet *optSet, int id, const char *name, const char *arg)
|
typedefbool(*
Fonction pouvant être appelée pour gérer un ensemble d'options de ligne de commande. |
Variables |
|
---|---|
PrintArgError = DefaultPrintArgError)(const char *msg,...)
|
void(*
Pointeur de la fonction utilisée pour imprimer les erreurs qui se produisent lors de l'analyse des arguments.
|
gActiveOptionSets = NULL
|
OptionSet **
Liste des ensembles d'options transmis à l'appel ParseArgs() actuellement actif.
|
Fonctions |
|
---|---|
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
Affichez un message d'erreur associé à l'analyse des arguments.
|
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
Analyser un ensemble d'arguments de type ligne de commande, en appelant des fonctions de gestion pour traiter chaque option et un argument autre qu'une option
|
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
Analyser un ensemble d'arguments à partir d'une variable d'environnement nommée
|
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
Analyser un ensemble d'arguments à partir d'une chaîne donnée
|
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
Analyser une chaîne en tant que valeur booléenne.
|
ParseFabricId(const char *str, uint64_t & fabricId, bool allowReserved)
|
bool
Analysez un ID de tissu Weave sous forme de texte.
|
ParseHexString(const char *hexStr, uint32_t strLen, uint8_t *outBuf, uint32_t outBufSize, uint32_t & outDataLen)
|
bool
Analyser une chaîne d'octets donnée au format hexadécimal.
|
ParseIPAddress(const char *str, IPAddress & output)
|
bool
Analyser une adresse IP au format texte
|
ParseInt(const char *str, uint64_t & output, int base)
|
bool
Analysez et essayez de convertir une chaîne en entier non signé de 64 bits en appliquant l'interprétation appropriée en fonction du paramètre de base.
|
ParseInt(const char *str, uint32_t & output, int base)
|
bool
Analysez et essayez de convertir une chaîne en entier non signé de 32 bits en appliquant l'interprétation appropriée en fonction du paramètre de base.
|
ParseInt(const char *str, int32_t & output, int base)
|
bool
Analysez et essayez de convertir une chaîne en entier signé de 32 bits en appliquant l'interprétation appropriée en fonction du paramètre de base.
|
ParseInt(const char *str, uint64_t & output)
|
bool
Analysez et tentez de convertir une chaîne interprétée comme une valeur décimale en entier non signé de 64 bits, en appliquant l'interprétation appropriée en fonction du paramètre de base.
|
ParseInt(const char *str, uint32_t & output)
|
bool
Analysez et tentez de convertir une chaîne interprétée comme une valeur décimale en entier non signé de 32 bits, en appliquant l'interprétation appropriée en fonction du paramètre de base.
|
ParseInt(const char *str, int32_t & output)
|
bool
Analysez et tentez de convertir une chaîne interprétée comme une valeur décimale en entier signé de 32 bits, en appliquant l'interprétation appropriée en fonction du paramètre de base.
|
ParseInt(const char *str, uint16_t & output)
|
bool
Analyser et tenter de convertir une chaîne interprétée comme une valeur décimale en entier non signé de 16 bits en appliquant l'interprétation appropriée en fonction du paramètre de base.
|
ParseInt(const char *str, int16_t & output)
|
bool
Analyser et tenter de convertir une chaîne interprétée comme une valeur décimale en entier signé de 16 bits, en appliquant l'interprétation appropriée en fonction du paramètre de base.
|
ParseInt(const char *str, uint8_t & output)
|
bool
Analysez et tentez de convertir une chaîne interprétée comme une valeur décimale en entier non signé de 8 bits, en appliquant l'interprétation appropriée en fonction du paramètre de base.
|
ParseNodeId(const char *str, uint64_t & nodeId)
|
bool
Analysez un ID de nœud Weave sous forme de texte.
|
ParseSubnetId(const char *str, uint16_t & subnetId)
|
bool
Analyser et tenter de convertir une chaîne en ID de sous-réseau non signé de 16 bits, en interprétant la chaîne comme hexadécimale.
|
PrintOptionHelp(OptionSet *optSets[], FILE *s)
|
void
Imprimez le texte d'aide d'une liste spécifiée d'options dans un flux.
|
PutStringWithBlankLine(FILE *s, const char *str)
|
void
|
PutStringWithNewLine(FILE *s, const char *str)
|
void
|
SplitArgs(char *argStr, char **& argList, char *initialArg)
|
int32_t
|
Classes |
|
---|---|
nl:: |
Valeur OptionSet courante pour la gestion des options d'information (aide, version). |
nl:: |
Un élément OptionSet dans lequel le handler est une fonction virtuelle. |
Structs |
|
---|---|
nl:: |
Définit une option de ligne de commande. |
nl:: |
Définit un groupe d'options de ligne de commande liées de façon logique et réutilisables. |
Énumérations
OptionArgumentType
OptionArgumentType
Définit les conditions requises pour les arguments pour une option de ligne de commande.
Typedefs
NonOptionArgHandlerFunct
bool(* NonOptionArgHandlerFunct)(const char *progName, int argc, char *argv[])
Fonction pouvant être appelée pour gérer tout argument de ligne de commande non-option restant.
OptionHandlerFunct
bool(* OptionHandlerFunct)(const char *progName, OptionSet *optSet, int id, const char *name, const char *arg)
Fonction pouvant être appelée pour gérer un ensemble d'options de ligne de commande.
Variables
PrintArgError
void(* PrintArgError)(const char *msg,...) = DefaultPrintArgError
Pointeur de la fonction utilisée pour imprimer les erreurs qui se produisent lors de l'analyse des arguments.
Les applications doivent appeler PrintArgError() pour signaler les erreurs dans leurs fonctions de gestion d'arguments avec ou sans option, au lieu d'imprimer directement sur stdout/stderr.
Définit par défaut un pointeur vers la fonction DefaultPrintArgError()
.
gActiveOptionSets
OptionSet ** gActiveOptionSets = NULL
Liste des ensembles d'options transmis à l'appel ParseArgs() actuellement actif.
Cette valeur est NULL si aucun appel à ParseArgs() n'est en cours.
Fonctions
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, ... )
Affichez un message d'erreur associé à l'analyse des arguments.
Fonction par défaut utilisée pour imprimer les messages d'erreur générés par l'analyse des arguments.
Détails | |||
---|---|---|---|
Paramètres |
|
Les applications doivent appeler via le pointeur de la fonction PrintArgError au lieu d'appeler directement cette fonction.
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 )
Analyser un ensemble d'arguments de type ligne de commande, en appelant des fonctions de gestion pour traiter chaque option et un argument autre qu'une option
ParseArgs() prend une liste d'arguments (argv
) et les analyse en fonction d'un ensemble de définitions d'options fournies. La fonction prend en charge les options long (opt) et court (-o) et implémente la même syntaxe d'option que la fonction GNU getopt_long(3).
Détails | |||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Paramètres |
|
||||||||||||
Renvoie |
true si toutes les options et tous les arguments autres que des options ont bien été analysés ; false si une option n'est pas reconnue ou si l'une des fonctions du gestionnaire a échoué (c'est-à-dire a renvoyé la valeur "false"). |
Les définitions d'option sont transmises à ParseArgs() sous la forme d'un tableau de structures OptionSet (optSets
). Chaque OptionSet contient un tableau de définitions d'options et une fonction de gestionnaire. ParseArgs() traite les arguments d'option dans l'ordre indiqué, en appelant la fonction de gestionnaire correspondante pour chaque option reconnue. Une fois toutes les options analysées, une fonction de gestionnaire distincte (nonOptArgHandler
) est appelée une fois pour traiter les arguments restants.
ENSEMBLES D'OPTION
Un OptionSet contient un ensemble de définitions d'options, ainsi qu'un pointeur vers une fonction de gestionnaire qui est appelée lorsque l'une des options associées est rencontrée. Les jeux d'options contiennent également un texte d'aide décrivant la syntaxe et l'objectif de chaque option (voir AIDE SUR LES OPTIONs ci-dessous). Les ensembles d'options sont conçus pour permettre la création de collections réutilisables d'options associées. Cela simplifie les efforts nécessaires pour gérer plusieurs applications qui acceptent des options similaires (par exemple, des applications de test).
Deux modèles permettent de définir le paramètre OptionSetsone permettant d'initialiser une instance de la structure OptionSet elle-même : en tant que global statique, ou sous-classe OptionSetBase et fournissez un constructeur. Cette dernière utilise une fonction HandleOption()
virtuelle pure pour déléguer la gestion des options à la sous-classe.
Les listes d'OptionSets sont transmises à la fonction ParseArgs() en tant que tableau de pointeurs clôturé par une valeur 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)) { ... } }
DÉFINITIONS DES OPTION
Les options sont définies à l'aide de la structure OptionDef
. Les définitions d'option sont organisées sous la forme d'un tableau d'éléments OptionDef, où chaque élément contient: le nom de l'option, un ID d'entier utilisé pour identifier l'option et si l'option attend/autorise un argument. La fin du tableau d'options est signalée par un champ "NULL Name". 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 D'OPTION
Les identifiants d'option identifient les options du code qui les gère (fonction OptionHandler). Les identifiants d'option se rapportent au OptionSet dans lequel ils apparaissent. Ils peuvent donc être réutilisés dans différents ensembles d'options (voir la section "OPTIONS COURT" ci-dessous). En règle générale, les ID d'option de numérotation commencent à 1 000, mais tout nombre > 128. Les options d'alias peuvent être créées en utilisant le même identifiant d'option avec des noms d'option différents.
OPTIONS COURTES
Contrairement à getopt_long(3), ParseArgs() ne nécessite pas de chaîne distincte spécifiant la liste des caractères d'option abrégés. Par contre, toute option dont la valeur d'ID est comprise dans la plage de caractères ASCII graphiques autorise l'utilisation de ce caractère en tant qu'option abrégée.
ParseArgs() nécessite que les caractères d'option courts soient uniques dans tous les ensembles d'options. Pour cette raison, l'utilisation d'options courtes est déconseillée pour les ensembles d'options partagés entre les programmes en raison du risque important de collision. Les caractères des options abrégées peuvent être réutilisés dans un même OptionSet pour permettre la création de noms d'options longs pour les alias.
AIDE SUR LES OPTION
Chaque OptionSet contient une chaîne OptionHelp
qui décrit l'objectif et la syntaxe des options associées. Ces chaînes sont utilisées par la fonction PrintOptionHelp()
pour générer des informations sur l'utilisation des options.
Par convention, les chaînes d'aide sur les options sont constituées d'un exemple de syntaxe suivi d'une description textuelle de l'option. Si l'option comporte une version courte ou un nom d'alias, il est placé avant le nom long principal. Par souci de cohérence, les lignes de syntaxe sont mises en retrait avec 2 espaces, tandis que les lignes de description sont en retrait de 7 espaces. Une seule ligne vide suit chaque description d'option, y compris la dernière.
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";
GROUPES D'AIDE SUR LES OPTION
Les ensembles d'options contiennent une chaîne HelpGroupName
qui permet de regrouper les options dans le résultat de l'aide. La fonction PrintOptionHelp()
utilise "HelpGroupName" comme titre de section dans le résultat d'utilisation généré. Si plusieurs OptionSets ont le même HelpGroupName, PrintOptionHelp() imprime l'aide sur les options pour les différents ensemble d'options ensemble sous un titre de section commun.
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 )
Analyser un ensemble d'arguments à partir d'une variable d'environnement nommée
ParseArgsFromEnvVar() lit une variable d'environnement nommée et transmet la valeur à ParseArgsFromString()
pour analyse. Si la variable d'environnement n'est pas définie, la fonction n'a aucun effet.
Détails | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Paramètres |
|
||||||||||
Renvoie |
true si toutes les options et tous les arguments qui ne sont pas des options ont bien été analysés, ou si la variable d'environnement spécifiée n'est pas définie ; false si une option n'était pas reconnue, si l'une des fonctions du gestionnaire a échoué (c'est-à-dire a renvoyé la valeur "false") ou si une erreur interne s'est produite. |
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 )
Analyser un ensemble d'arguments à partir d'une chaîne donnée
ParseArgsFromString() divise une chaîne donnée (argStr
) en un ensemble d'arguments et analyse ces arguments à l'aide de la fonction ParseArgs().
Détails | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Paramètres |
|
||||||||||
Renvoie |
true si toutes les options et tous les arguments autres que des options ont bien été analysés ; false si une option n'était pas reconnue, si l'une des fonctions du gestionnaire a échoué (c'est-à-dire a renvoyé la valeur "false") ou si une erreur interne s'est produite. |
La syntaxe des chaînes d'entrée est semblable à celle des commandes Unix Shell, mais avec un schéma de guillemets simplifié. Plus spécifiquement :
- Les arguments sont délimités par des espaces blancs, sauf si ces derniers sont placés entre guillemets ou échappés.
- Une barre oblique inverse permet d'échapper le caractère suivant, qui est alors traité comme un caractère normal. La barre oblique inversée elle-même est supprimée.
- Sous-chaînes entre guillemets simples ou doubles au début ou à la fin. Dans une sous-chaîne, les seuls caractères spéciaux sont la barre oblique inverse, qui échappe le caractère suivant et le guillemet de fin correspondant. Les guillemets de début et de fin sont supprimés.
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 )
Analyser une chaîne en tant que valeur booléenne.
Cette fonction accepte les valeurs d'entrée suivantes (non sensibles à la casse) : "true", "yes", "t", "y", "1", "false", "no", "f", "n", "0".
Détails | |||||
---|---|---|---|---|---|
Paramètres |
|
||||
Renvoie |
vrai en cas de succès ; sinon la valeur est "false" en cas d'échec.
|
ParseFabricId
bool ParseFabricId( const char *str, uint64_t & fabricId, bool allowReserved )
Analysez un ID de tissu Weave sous forme de texte.
La fonction ParseFabricId() accepte un ID de structure 64 bits au format hexadécimal, avec ou sans un "0x" au début.
Détails | |||||||
---|---|---|---|---|---|---|---|
Paramètres |
|
||||||
Renvoie |
"true" si la valeur a bien été analysée ; "false" dans le cas contraire.
|
ParseHexString
bool ParseHexString( const char *hexStr, uint32_t strLen, uint8_t *outBuf, uint32_t outBufSize, uint32_t & outDataLen )
Analyser une chaîne d'octets donnée au format hexadécimal.
ParseHexString() s'attend à ce que l'entrée se présente sous la forme de paires de chiffres hexadécimaux (majuscules ou minuscules). Les paires hexadécimales peuvent aussi être séparées par l'un des caractères suivants: deux-points, point-virgule, virgule, point ou tiret. De plus, les espaces blancs n'importe où dans la chaîne d'entrée sont ignorés.
Détails | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Paramètres |
|
||||||||||
Renvoie |
"true" si la valeur a bien été analysée ; "false" si les données d'entrée sont incorrectes ou si
outBuf est trop petit. |
ParseIPAddress
bool ParseIPAddress( const char *str, IPAddress & output )
Analyser une adresse IP au format texte
Détails | |||||
---|---|---|---|---|---|
Paramètres |
|
||||
Renvoie |
"true" si la valeur a bien été analysée ; "false" dans le cas contraire.
|
ParseInt
bool ParseInt( const char *str, uint64_t & output, int base )
Analysez et essayez de convertir une chaîne en entier non signé de 64 bits en appliquant l'interprétation appropriée en fonction du paramètre de base.
Détails | |||||||
---|---|---|---|---|---|---|---|
Paramètres |
|
||||||
Renvoie |
vrai en cas de succès ; sinon la valeur est "false" en cas d'échec.
|
ParseInt
bool ParseInt( const char *str, uint32_t & output, int base )
Analysez et essayez de convertir une chaîne en entier non signé de 32 bits en appliquant l'interprétation appropriée en fonction du paramètre de base.
Détails | |||||||
---|---|---|---|---|---|---|---|
Paramètres |
|
||||||
Renvoie |
vrai en cas de succès ; sinon la valeur est "false" en cas d'échec.
|
ParseInt
bool ParseInt( const char *str, int32_t & output, int base )
Analysez et essayez de convertir une chaîne en entier signé de 32 bits en appliquant l'interprétation appropriée en fonction du paramètre de base.
Détails | |||||||
---|---|---|---|---|---|---|---|
Paramètres |
|
||||||
Renvoie |
vrai en cas de succès ; sinon la valeur est "false" en cas d'échec.
|
ParseInt
bool ParseInt( const char *str, uint64_t & output )
Analysez et tentez de convertir une chaîne interprétée comme une valeur décimale en entier non signé de 64 bits, en appliquant l'interprétation appropriée en fonction du paramètre de base.
Détails | |||||
---|---|---|---|---|---|
Paramètres |
|
||||
Renvoie |
vrai en cas de succès ; sinon la valeur est "false" en cas d'échec.
|
ParseInt
bool ParseInt( const char *str, uint32_t & output )
Analysez et tentez de convertir une chaîne interprétée comme une valeur décimale en entier non signé de 32 bits, en appliquant l'interprétation appropriée en fonction du paramètre de base.
Détails | |||||
---|---|---|---|---|---|
Paramètres |
|
||||
Renvoie |
vrai en cas de succès ; sinon la valeur est "false" en cas d'échec.
|
ParseInt
bool ParseInt( const char *str, int32_t & output )
Analysez et tentez de convertir une chaîne interprétée comme une valeur décimale en entier signé de 32 bits, en appliquant l'interprétation appropriée en fonction du paramètre de base.
Détails | |||||
---|---|---|---|---|---|
Paramètres |
|
||||
Renvoie |
vrai en cas de succès ; sinon la valeur est "false" en cas d'échec.
|
ParseInt
bool ParseInt( const char *str, uint16_t & output )
Analyser et tenter de convertir une chaîne interprétée comme une valeur décimale en entier non signé de 16 bits en appliquant l'interprétation appropriée en fonction du paramètre de base.
Détails | |||||
---|---|---|---|---|---|
Paramètres |
|
||||
Renvoie |
vrai en cas de succès ; sinon la valeur est "false" en cas d'échec.
|
ParseInt
bool ParseInt( const char *str, int16_t & output )
Analyser et tenter de convertir une chaîne interprétée comme une valeur décimale en entier signé de 16 bits, en appliquant l'interprétation appropriée en fonction du paramètre de base.
Détails | |||||
---|---|---|---|---|---|
Paramètres |
|
||||
Renvoie |
vrai en cas de succès ; sinon la valeur est "false" en cas d'échec.
|
ParseInt
bool ParseInt( const char *str, uint8_t & output )
Analysez et tentez de convertir une chaîne interprétée comme une valeur décimale en entier non signé de 8 bits, en appliquant l'interprétation appropriée en fonction du paramètre de base.
Détails | |||||
---|---|---|---|---|---|
Paramètres |
|
||||
Renvoie |
vrai en cas de succès ; sinon la valeur est "false" en cas d'échec.
|
ParseNodeId
bool ParseNodeId( const char *str, uint64_t & nodeId )
Analysez un ID de nœud Weave sous forme de texte.
La fonction ParseNodeId() accepte un ID de nœud de 64 bits au format hexadécimal (avec ou sans un "0x" au début) ou les mots "any" ou "tous" qui sont interprétés comme la signification de l'ID de n'importe quel nœud (0xFFFFFFFFFFFFFFFF).
Détails | |||||
---|---|---|---|---|---|
Paramètres |
|
||||
Renvoie |
"true" si la valeur a bien été analysée ; "false" dans le cas contraire.
|
ParseSubnetId
bool ParseSubnetId( const char *str, uint16_t & subnetId )
Analyser et tenter de convertir une chaîne en ID de sous-réseau non signé de 16 bits, en interprétant la chaîne comme hexadécimale.
Détails | |||||
---|---|---|---|---|---|
Paramètres |
|
||||
Renvoie |
vrai en cas de succès ; sinon la valeur est "false" en cas d'échec.
|
PrintOptionHelp
void PrintOptionHelp( OptionSet *optSets[], FILE *s )
Imprimez le texte d'aide d'une liste spécifiée d'options dans un flux.
Détails | |||||
---|---|---|---|---|---|
Paramètres |
|
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 )