nl:: ArgParser
Resumo
Enumerações |
|
---|---|
OptionArgumentType
|
enum Define os requisitos de argumento para uma opção de linha de comando. |
Typedefs |
|
---|---|
NonOptionArgHandlerFunct)(const char *progName, int argc, char *argv[])
|
typedefbool(*
Uma função que pode ser chamada para lidar com quaisquer argumentos de linha de comando restantes e não opcionais. |
OptionHandlerFunct)(const char *progName, OptionSet *optSet, int id, const char *name, const char *arg)
|
typedefbool(*
Uma função que pode ser chamada para lidar com um conjunto de opções de linha de comando. |
Variáveis |
|
---|---|
PrintArgError = DefaultPrintArgError)(const char *msg,...)
|
void(*
Ponteiro para a função usada para mostrar erros que ocorrem durante a análise do argumento.
|
gActiveOptionSets = NULL
|
OptionSet **
A lista de OptionSets transmitida para a chamada ParseArgs() ativa no momento.
|
remotas |
|
---|---|
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
Mostra uma mensagem de erro associada à análise do argumento.
|
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
Analisa um conjunto de argumentos de estilo de linha de comando, chamando funções de processamento para processar cada opção e argumento de não opção.
|
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
Analisa um conjunto de argumentos de uma variável de ambiente nomeada.
|
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
Analisa um conjunto de argumentos de uma determinada 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
Analisa uma string como um valor booleano.
|
ParseFabricId(const char *str, uint64_t & fabricId, bool allowReserved)
|
bool
Analisa um código de tecido do Weave em formato de texto.
|
ParseHexString(const char *hexStr, uint32_t strLen, uint8_t *outBuf, uint32_t outBufSize, uint32_t & outDataLen)
|
bool
Analisa uma string de bytes fornecidos em formato hexadecimal.
|
ParseIPAddress(const char *str, IPAddress & output)
|
bool
Analisa um endereço IP em formato de texto.
|
ParseInt(const char *str, uint64_t & output, int base)
|
bool
Analisa e tenta converter uma string em um número inteiro não assinado de 64 bits, aplicando a interpretação apropriada com base no parâmetro base.
|
ParseInt(const char *str, uint32_t & output, int base)
|
bool
Analisa e tenta converter uma string em um número inteiro não assinado de 32 bits, aplicando a interpretação apropriada com base no parâmetro base.
|
ParseInt(const char *str, int32_t & output, int base)
|
bool
Analisa e tenta converter uma string em um número inteiro assinado de 32 bits, aplicando a interpretação apropriada com base no parâmetro base.
|
ParseInt(const char *str, uint64_t & output)
|
bool
Analisa e tenta converter uma string interpretada como valor decimal em um número inteiro não assinado de 64 bits, aplicando a interpretação apropriada com base no parâmetro base.
|
ParseInt(const char *str, uint32_t & output)
|
bool
Analisa e tenta converter uma string interpretada como valor decimal em um número inteiro não assinado de 32 bits, aplicando a interpretação apropriada com base no parâmetro base.
|
ParseInt(const char *str, int32_t & output)
|
bool
Analisa e tenta converter uma string interpretada como um valor decimal em um número inteiro assinado de 32 bits, aplicando a interpretação apropriada com base no parâmetro base.
|
ParseInt(const char *str, uint16_t & output)
|
bool
Analisa e tenta converter uma string interpretada como um valor decimal em um número inteiro não assinado de 16 bits, aplicando a interpretação apropriada com base no parâmetro base.
|
ParseInt(const char *str, int16_t & output)
|
bool
Analisa e tenta converter uma string interpretada como um valor decimal em um número inteiro assinado de 16 bits, aplicando a interpretação apropriada com base no parâmetro base.
|
ParseInt(const char *str, uint8_t & output)
|
bool
Analisa e tenta converter uma string interpretada como valor decimal em um número inteiro não assinado de 8 bits, aplicando a interpretação apropriada com base no parâmetro base.
|
ParseNodeId(const char *str, uint64_t & nodeId)
|
bool
Analisa um ID de nó do Weave em formato de texto.
|
ParseSubnetId(const char *str, uint16_t & subnetId)
|
bool
Analisa e tenta converter uma string em um ID de sub-rede não assinado de 16 bits, interpretando a string como hexadecimal.
|
PrintOptionHelp(OptionSet *optSets[], FILE *s)
|
void
Mostra o texto de ajuda para uma lista especificada de opções em um stream.
|
PutStringWithBlankLine(FILE *s, const char *str)
|
void
|
PutStringWithNewLine(FILE *s, const char *str)
|
void
|
SplitArgs(char *argStr, char **& argList, char *initialArg)
|
int32_t
|
Aulas |
|
---|---|
nl:: |
OptionSet comum para gerenciar opções informativas (ajuda, versão). |
nl:: |
Um OptionSet em que o gerenciador é uma função virtual |
Estruturas |
|
---|---|
nl:: |
Define uma opção de linha de comando. |
nl:: |
Define um grupo de opções de linha de comando reutilizáveis e relacionadas de maneira lógica. |
Enumerações
OptionArgumentType
OptionArgumentType
Define os requisitos de argumento para uma opção de linha de comando.
Typedefs
NonOptionArgHandlerFunct
bool(* NonOptionArgHandlerFunct)(const char *progName, int argc, char *argv[])
Uma função que pode ser chamada para lidar com quaisquer argumentos de linha de comando restantes e não opcionais.
OptionHandlerFunct
bool(* OptionHandlerFunct)(const char *progName, OptionSet *optSet, int id, const char *name, const char *arg)
Uma função que pode ser chamada para lidar com um conjunto de opções de linha de comando.
Variáveis
PrintArgError
void(* PrintArgError)(const char *msg,...) = DefaultPrintArgError
Ponteiro para a função usada para mostrar erros que ocorrem durante a análise do argumento.
Os aplicativos precisam chamar PrintArgError() para informar erros nas funções de processamento de argumentos opcionais e não opcionais, em vez de imprimir diretamente em stdout/stderr.
O padrão é um ponteiro para a função DefaultPrintArgError()
.
gActiveOptionSets
OptionSet ** gActiveOptionSets = NULL
A lista de OptionSets transmitida para a chamada ParseArgs() ativa no momento.
Este valor será NULL quando nenhuma chamada para ParseArgs() estiver em andamento.
remotas
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, ... )
Mostra uma mensagem de erro associada à análise do argumento.
Função padrão usada para mostrar mensagens de erro que surgem devido à análise de argumentos.
Detalhes | |||
---|---|---|---|
Parâmetros |
|
Os aplicativos devem chamar por meio do ponteiro da função PrintArgError, em vez de chamar essa função diretamente.
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 )
Analisa um conjunto de argumentos de estilo de linha de comando, chamando funções de processamento para processar cada opção e argumento de não opção.
ParseArgs() usa uma lista de argumentos (argv
) e os analisa de acordo com um conjunto de definições de opção fornecidas. A função oferece suporte a opções longas (opt) e curtas (-o) e implementa a mesma sintaxe de opção que a função do GNU getopt_long(3).
Detalhes | |||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Parâmetros |
|
||||||||||||
Retorna |
true se todas as opções e argumentos não opcionais forem analisados; false se uma opção não foi reconhecida ou se uma das funções do gerenciador falhou (ou seja, retornou "falso"). |
As definições de opção são transmitidas para ParseArgs() como uma matriz de estruturas OptionSet (optSets
). Cada OptionSet contém uma matriz de definições de opção e uma função de gerenciador. ParseArgs() processa argumentos de opção na ordem determinada, chamando a respectiva função do gerenciador para cada opção reconhecida. Depois que todas as opções forem analisadas, uma função gerenciadora não opcional (nonOptArgHandler
) será chamada uma vez para processar os argumentos restantes.
CONJUNTOS DE OPÇÕES
Um OptionSet contém um conjunto de definições de opções, junto com um ponteiro para uma função de gerenciador que é chamada quando uma das opções associadas é encontrada. Os conjuntos de opções também contêm um texto de ajuda que descreve a sintaxe e a finalidade de cada opção (consulte a AJUDA DE OPÇÕES abaixo). Os conjuntos de opções foram projetados para permitir a criação de coleções reutilizáveis de opções relacionadas. Isso simplifica o esforço necessário para manter vários aplicativos que aceitam opções semelhantes (por exemplo, aplicativos de teste).
Há dois padrões para definir OptionSetsone: cada um pode inicializar uma instância do próprio struct OptionSet, por exemplo, como um valor global estático, ou uma subclasse OptionSetBase, e fornecer um construtor. O último usa uma função HandleOption()
virtual pura para delegar o processamento de opções à subclasse.
As listas de OptionSets são transmitidas para a função ParseArgs() como uma matriz de ponteiros terminada em 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)) { ... } }
DEFINIÇÕES DA OPÇÃO
As opções são definidas usando a estrutura OptionDef
. As definições de opção são organizadas como uma matriz de elementos OptionDef, em que cada elemento contém: o nome da opção, um código de número inteiro que é usado para identificar a opção e se a opção espera/permite um argumento. O fim da matriz de opções é sinalizado por um 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 } };
IDS DAS OPÇÕES
Os IDs de opção identificam opções para o código que as processa (a função OptionHandler). Os códigos de opção são relativos ao OptionSet em que aparecem e, portanto, podem ser reutilizados em diferentes OptionSets (no entanto, confira "SHORT OPTIONS" abaixo). A convenção comum é começar a numerar os IDs de opção em 1.000, porém qualquer número maior que 128 pode ser usado. As opções de alias podem ser criadas usando o mesmo código de opção com nomes de opção diferentes.
OPÇÕES CURTAS
Ao contrário de getopt_long(3), ParseArgs() não usa uma string separada especificando a lista de caracteres curtos de opção. Em vez disso, qualquer opção cujo valor do ID esteja no intervalo de caracteres ASCII gráficos permitirá que esse caractere seja usado como uma opção curta.
ParseArgs() exige que os caracteres curtos de opção sejam exclusivos em todos os OptionSets. Por isso, o uso de opções curtas não é recomendado para OptionSets compartilhados entre programas, devido à chance significativa de colisões. Os caracteres de opções curtas podem ser reutilizados em um único OptionSet para permitir a criação de nomes de opção longos do alias.
AJUDA DA OPÇÃO
Cada OptionSet contém uma string OptionHelp
que descreve a finalidade e a sintaxe das opções associadas. Essas strings são usadas pela função PrintOptionHelp()
para gerar informações de uso da opção.
Por convenção, as strings de ajuda da opção consistem em um exemplo de sintaxe seguido por uma descrição textual da opção. Se a opção tiver uma versão curta ou um nome de alias, ele será fornecido antes do nome longo principal. Para manter a consistência, as linhas de sintaxe são recuadas com dois espaços, enquanto as linhas de descrição são recuadas com sete espaços. Uma única linha em branco segue a descrição de cada opção, incluindo a última.
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";
GRUPOS DE AJUDA DAS OPÇÕES
OptionSets contém uma string HelpGroupName
que é usada para agrupar opções na saída de ajuda. A função PrintOptionHelp()
usa o HelpGroupName como um título de seção na saída de uso gerada. Se vários OptionSets tiverem o mesmo HelpGroupName, o PrintOptionHelp() exibirá a ajuda da opção para os diferentes OptionSets juntos em um título de seção comum.
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 )
Analisa um conjunto de argumentos de uma variável de ambiente nomeada.
ParseArgsFromEnvVar() lê uma variável de ambiente nomeada e transmite o valor para ParseArgsFromString()
para análise. Se a variável de ambiente não for definida, a função não fará nada.
Detalhes | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Parâmetros |
|
||||||||||
Retorna |
true se todas as opções e argumentos não opcionais forem analisados com êxito ou se a variável de ambiente especificada não estiver definida; false se uma opção não foi reconhecida, se uma das funções de gerenciador falhou (ou seja, retornou um valor falso) ou se ocorreu um erro 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 )
Analisa um conjunto de argumentos de uma determinada string.
ParseArgsFromString() divide uma determinada string (argStr
) em um conjunto de argumentos e analisa os argumentos usando a função ParseArgs().
Detalhes | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Parâmetros |
|
||||||||||
Retorna |
true se todas as opções e argumentos não opcionais forem analisados; false se uma opção não for reconhecida, se uma das funções do gerenciador falhar (ou seja, retornar falso) ou se ocorrer um erro interno. |
A sintaxe das strings de entrada é semelhante à sintaxe do comando do shell Unix, mas com um esquema simplificado de aspas. Especificamente:
- Os argumentos são delimitados por espaços em branco, a menos que esses espaços estejam entre aspas ou com escape.
- Uma barra invertida escapa o caractere a seguir, fazendo com que ele seja tratado como um caractere normal. A própria barra invertida é removida.
- As aspas simples ou duplas começam/terminam substrings entre aspas. Em uma substring, os únicos caracteres especiais são a barra invertida, que faz o escape do próximo caractere e da aspas final correspondente. Os caracteres de aspas de início/término são removidos.
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 )
Analisa uma string como um valor booleano.
Essa função aceita os seguintes valores de entrada (não diferencia maiúsculas de minúsculas): "true", "yes", "t", "y", "1", "false", "no", "f", "n" e "0".
Detalhes | |||||
---|---|---|---|---|---|
Parâmetros |
|
||||
Retorna |
verdadeiro em caso de sucesso; caso contrário, falso em caso de falha.
|
ParseFabricId
bool ParseFabricId( const char *str, uint64_t & fabricId, bool allowReserved )
Analisa um código de tecido do Weave em formato de texto.
A função ParseFabricId() aceita um ID de tecido de 64 bits fornecido em formato hexadecimal, com ou sem um "0x" inicial.
Detalhes | |||||||
---|---|---|---|---|---|---|---|
Parâmetros |
|
||||||
Retorna |
verdadeiro se o valor tiver sido analisado com êxito; caso contrário, será falso.
|
ParseHexString
bool ParseHexString( const char *hexStr, uint32_t strLen, uint8_t *outBuf, uint32_t outBufSize, uint32_t & outDataLen )
Analisa uma string de bytes fornecidos em formato hexadecimal.
ParseHexString() espera que a entrada esteja na forma de pares de dígitos hexadecimais (maiúsculas ou minúsculas). Os pares hexadecimais podem ser separados por qualquer um dos seguintes caracteres: dois-pontos, ponto e vírgula, vírgula, ponto ou traço. Além disso, caracteres de espaço em branco em qualquer lugar da string de entrada são ignorados.
Detalhes | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Parâmetros |
|
||||||||||
Retorna |
"true" se o valor foi analisado; "false" se os dados de entrada são malformados ou se
outBuf é muito pequeno. |
ParseIPAddress
bool ParseIPAddress( const char *str, IPAddress & output )
Analisa um endereço IP em formato de texto.
Detalhes | |||||
---|---|---|---|---|---|
Parâmetros |
|
||||
Retorna |
verdadeiro se o valor tiver sido analisado com êxito; caso contrário, será falso.
|
ParseInt
bool ParseInt( const char *str, uint64_t & output, int base )
Analisa e tenta converter uma string em um número inteiro não assinado de 64 bits, aplicando a interpretação apropriada com base no parâmetro base.
Detalhes | |||||||
---|---|---|---|---|---|---|---|
Parâmetros |
|
||||||
Retorna |
verdadeiro em caso de sucesso; caso contrário, falso em caso de falha.
|
ParseInt
bool ParseInt( const char *str, uint32_t & output, int base )
Analisa e tenta converter uma string em um número inteiro não assinado de 32 bits, aplicando a interpretação apropriada com base no parâmetro base.
Detalhes | |||||||
---|---|---|---|---|---|---|---|
Parâmetros |
|
||||||
Retorna |
verdadeiro em caso de sucesso; caso contrário, falso em caso de falha.
|
ParseInt
bool ParseInt( const char *str, int32_t & output, int base )
Analisa e tenta converter uma string em um número inteiro assinado de 32 bits, aplicando a interpretação apropriada com base no parâmetro base.
Detalhes | |||||||
---|---|---|---|---|---|---|---|
Parâmetros |
|
||||||
Retorna |
verdadeiro em caso de sucesso; caso contrário, falso em caso de falha.
|
ParseInt
bool ParseInt( const char *str, uint64_t & output )
Analisa e tenta converter uma string interpretada como valor decimal em um número inteiro não assinado de 64 bits, aplicando a interpretação apropriada com base no parâmetro base.
Detalhes | |||||
---|---|---|---|---|---|
Parâmetros |
|
||||
Retorna |
verdadeiro em caso de sucesso; caso contrário, falso em caso de falha.
|
ParseInt
bool ParseInt( const char *str, uint32_t & output )
Analisa e tenta converter uma string interpretada como valor decimal em um número inteiro não assinado de 32 bits, aplicando a interpretação apropriada com base no parâmetro base.
Detalhes | |||||
---|---|---|---|---|---|
Parâmetros |
|
||||
Retorna |
verdadeiro em caso de sucesso; caso contrário, falso em caso de falha.
|
ParseInt
bool ParseInt( const char *str, int32_t & output )
Analisa e tenta converter uma string interpretada como um valor decimal em um número inteiro assinado de 32 bits, aplicando a interpretação apropriada com base no parâmetro base.
Detalhes | |||||
---|---|---|---|---|---|
Parâmetros |
|
||||
Retorna |
verdadeiro em caso de sucesso; caso contrário, falso em caso de falha.
|
ParseInt
bool ParseInt( const char *str, uint16_t & output )
Analisa e tenta converter uma string interpretada como um valor decimal em um número inteiro não assinado de 16 bits, aplicando a interpretação apropriada com base no parâmetro base.
Detalhes | |||||
---|---|---|---|---|---|
Parâmetros |
|
||||
Retorna |
verdadeiro em caso de sucesso; caso contrário, falso em caso de falha.
|
ParseInt
bool ParseInt( const char *str, int16_t & output )
Analisa e tenta converter uma string interpretada como um valor decimal em um número inteiro assinado de 16 bits, aplicando a interpretação apropriada com base no parâmetro base.
Detalhes | |||||
---|---|---|---|---|---|
Parâmetros |
|
||||
Retorna |
verdadeiro em caso de sucesso; caso contrário, falso em caso de falha.
|
ParseInt
bool ParseInt( const char *str, uint8_t & output )
Analisa e tenta converter uma string interpretada como valor decimal em um número inteiro não assinado de 8 bits, aplicando a interpretação apropriada com base no parâmetro base.
Detalhes | |||||
---|---|---|---|---|---|
Parâmetros |
|
||||
Retorna |
verdadeiro em caso de sucesso; caso contrário, falso em caso de falha.
|
ParseNodeId
bool ParseNodeId( const char *str, uint64_t & nodeId )
Analisa um ID de nó do Weave em formato de texto.
A função ParseNodeId() aceita um ID de nó de 64 bits fornecido em formato hexadecimal (com ou sem um "0x" inicial) ou as palavras "qualquer" ou "todos", que são interpretadas como o significado de Qualquer ID de nó (0xFFFFFFFFFFFFFF).
Detalhes | |||||
---|---|---|---|---|---|
Parâmetros |
|
||||
Retorna |
verdadeiro se o valor tiver sido analisado com êxito; caso contrário, será falso.
|
ParseSubnetId
bool ParseSubnetId( const char *str, uint16_t & subnetId )
Analisa e tenta converter uma string em um ID de sub-rede não assinado de 16 bits, interpretando a string como hexadecimal.
Detalhes | |||||
---|---|---|---|---|---|
Parâmetros |
|
||||
Retorna |
verdadeiro em caso de sucesso; caso contrário, falso em caso de falha.
|
PrintOptionHelp
void PrintOptionHelp( OptionSet *optSets[], FILE *s )
Mostra o texto de ajuda para uma lista especificada de opções em um stream.
Detalhes | |||||
---|---|---|---|---|---|
Parâmetros |
|
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 )