nl::Weave::TLV::Utilities

Esse namespace inclui tipos e interfaces utilitárias para gerenciar e trabalhar com o TLV do Weave.

Resumo

Typedefs

IterateHandler)(const TLVReader &aReader, size_t aDepth, void *aContext) typedef

Funções

Count(const TLVReader & aReader, size_t & aCount)
Conte o número de elementos TLV no leitor TLV especificado, decrescente em matrizes ou estruturas.
Count(const TLVReader & aReader, size_t & aCount, const bool aRecurse)
Conte o número de elementos TLV no leitor TLV especificado, opcionalmente decrescente em matrizes ou estruturas.
CountHandler(const TLVReader & aReader, size_t aDepth, void *aContext)
Incremente o contador ao iterar pelos dados TLV.
Find(const TLVReader & aReader, const uint64_t & aTag, TLVReader & aResult)
Pesquisa a tag especificada no leitor TLV fornecido.
Find(const TLVReader & aReader, const uint64_t & aTag, TLVReader & aResult, const bool aRecurse)
Pesquisa a tag especificada no leitor TLV fornecido, opcionalmente decrescente em matrizes ou estruturas.
Find(const TLVReader & aReader, IterateHandler aPredicate, void *aContext, TLVReader & aResult)
Procure o primeiro elemento correspondente ao predicado no leitor TLV em ordem decrescente de matrizes ou estruturas.
Find(const TLVReader & aReader, IterateHandler aPredicate, void *aContext, TLVReader & aResult, const bool aRecurse)
Pesquise o primeiro elemento que corresponde ao predicado no leitor TLV, opcionalmente decrescente em matrizes ou estruturas.
FindHandler(const TLVReader & aReader, size_t aDepth, void *aContext)
Pesquisa a tag especificada no leitor TLV fornecido.
FindPredicateHandler(const TLVReader & aReader, size_t aDepth, void *aContext)
Iterate(TLVReader & aReader, size_t aDepth, IterateHandler aHandler, void *aContext, bool aRecurse)
Itere nos dados TLV referenciados por aReader e invoque aHandler para cada elemento TLV visitado no contexto de aContext.
Iterate(const TLVReader & aReader, IterateHandler aHandler, void *aContext)
Itere nos dados TLV referenciados por aReader e invoque aHandler para cada elemento TLV visitado no contexto de aContext.
Iterate(const TLVReader & aReader, IterateHandler aHandler, void *aContext, const bool aRecurse)
Itere nos dados TLV referenciados por aReader e invoque aHandler para cada elemento TLV visitado no contexto de aContext.

Estruturas

nl::Weave::TLV::Utilities::FindContext
nl::Weave::TLV::Utilities::FindPredicateContext

Typedefs

IterateHandler

WEAVE_ERROR(* IterateHandler)(const TLVReader &aReader, size_t aDepth, void *aContext)

Funções

Contagem

WEAVE_ERROR Count(
  const TLVReader & aReader,
  size_t & aCount
)

Conte o número de elementos TLV no leitor TLV especificado, decrescente em matrizes ou estruturas.

Detalhes
Parâmetros
[in] aReader
Uma referência somente leitura ao leitor TLV para o qual contar o número de elementos TLV.
[in,out] aCount
Uma referência ao armazenamento para a contagem retornada. Ele é inicializado como zero (0) antes da contagem e é definido como o número de elementos contados quando o processo for bem-sucedido.
Valores de retorno
WEAVE_NO_ERROR
Se a operação for bem-sucedida.

Contagem

WEAVE_ERROR Count(
  const TLVReader & aReader,
  size_t & aCount,
  const bool aRecurse
)

Conte o número de elementos TLV no leitor TLV especificado, opcionalmente decrescente em matrizes ou estruturas.

Detalhes
Parâmetros
[in] aReader
Uma referência somente leitura ao leitor TLV para o qual contar o número de elementos TLV.
[in,out] aCount
Uma referência ao armazenamento para a contagem retornada. Ele é inicializado como zero (0) antes da contagem e é definido como o número de elementos contados quando o processo for bem-sucedido.
[in] aRecurse
Um booleano que indica se (verdadeiro) ou não (falso) as matrizes ou estruturas encontradas devem ser descendentes.
Valores de retorno
WEAVE_NO_ERROR
Se a operação for bem-sucedida.

CountHandler

WEAVE_ERROR CountHandler(
  const TLVReader & aReader,
  size_t aDepth,
  void *aContext
)

Incremente o contador ao iterar pelos dados TLV.

Detalhes
Parâmetros
[in] aReader
Uma referência ao leitor TLV que contém os dados TLV para contar o número de elementos TLV.
[in] aDepth
A profundidade atual nos dados TLV.
[in,out] aContext
Um ponteiro para o contexto específico do gerenciador, que é um ponteiro para o armazenamento do valor de contagem.
Valores de retorno
WEAVE_NO_ERROR
Se a operação for bem-sucedida.
WEAVE_ERROR_INVALID_ARGUMENT
Se aContext for NULL.

Localizar

WEAVE_ERROR Find(
  const TLVReader & aReader,
  const uint64_t & aTag,
  TLVReader & aResult
)

Pesquisa a tag especificada no leitor TLV fornecido.

Detalhes
Parâmetros
[in] aReader
Uma referência somente leitura ao leitor TLV em que a tag especificada é encontrada.
[in] aTag
Uma referência somente leitura à tag TLV a ser encontrada.
[out] aResult
Uma referência ao armazenamento para um leitor TLV que será posicionado na tag especificada se a operação for bem-sucedida.
Valores de retorno
WEAVE_NO_ERROR
Se a operação for bem-sucedida.
WEAVE_ERROR_TLV_TAG_NOT_FOUND
Se a tag especificada aTag não tiver sido encontrada.

Localizar

WEAVE_ERROR Find(
  const TLVReader & aReader,
  const uint64_t & aTag,
  TLVReader & aResult,
  const bool aRecurse
)

Pesquisa a tag especificada no leitor TLV fornecido, opcionalmente decrescente em matrizes ou estruturas.

Detalhes
Parâmetros
[in] aReader
Uma referência somente leitura ao leitor TLV em que a tag especificada é encontrada.
[in] aTag
Uma referência somente leitura à tag TLV a ser encontrada.
[out] aResult
Uma referência ao armazenamento para um leitor TLV que será posicionado na tag especificada se a operação for bem-sucedida.
[in] aRecurse
Um booleano que indica (verdadeiro) ou não (falso) se as matrizes ou estruturas encontradas precisam ser descendentes.
Valores de retorno
WEAVE_NO_ERROR
Se a operação for bem-sucedida.
WEAVE_ERROR_TLV_TAG_NOT_FOUND
Se a tag especificada aTag não tiver sido encontrada.

Localizar

WEAVE_ERROR Find(
  const TLVReader & aReader,
  IterateHandler aPredicate,
  void *aContext,
  TLVReader & aResult
)

Procure o primeiro elemento correspondente ao predicado no leitor TLV em ordem decrescente de matrizes ou estruturas.

O aPredicate é aplicado a cada elemento TLV visitado. o aPredicate deve retornar WEAVE_ERROR_MAX para os elementos correspondentes, WEAVE_NO_ERROR para elementos não correspondentes e qualquer outro valor para encerrar a pesquisa.

Detalhes
Parâmetros
[in] aReader
Uma referência somente leitura ao leitor TLV em que o elemento correspondente ao predicado é encontrado.
[in] aPredicate
Um predicado a ser aplicado a cada elemento TLV. Para oferecer suporte à reutilização do código, o aPredicate tem o tipo IterateHandler. O valor de retorno de aPredicate controla a pesquisa: um WEAVE_ERROR_MAX sinaliza que o elemento desejado foi encontrado, WEAVE_NO_ERROR sinaliza que o elemento desejado não foi encontrado e todos os outros valores sinalizam que o contêiner deve ser encerrado.
[in] aContext
Um ponteiro opcional para dados de contexto fornecidos pelo autor da chamada.
[out] aResult
Uma referência ao armazenamento para um leitor TLV que será posicionado na tag especificada se a operação for bem-sucedida.
Valores de retorno
WEAVE_NO_ERROR
Se a operação for bem-sucedida.
WEAVE_ERROR_TLV_TAG_NOT_FOUND
Se o aPredicate especificado não localizou o elemento especificado

Localizar

WEAVE_ERROR Find(
  const TLVReader & aReader,
  IterateHandler aPredicate,
  void *aContext,
  TLVReader & aResult,
  const bool aRecurse
)

Pesquise o primeiro elemento que corresponde ao predicado no leitor TLV, opcionalmente decrescente em matrizes ou estruturas.

O aPredicate é aplicado a cada elemento TLV visitado. o aPredicate deve retornar WEAVE_ERROR_MAX para os elementos correspondentes, WEAVE_NO_ERROR para elementos não correspondentes e qualquer outro valor para encerrar a pesquisa.

Detalhes
Parâmetros
[in] aReader
Uma referência somente leitura ao leitor TLV em que o elemento correspondente ao predicado é encontrado.
[in] aPredicate
Um predicado a ser aplicado a cada elemento TLV. Para oferecer suporte à reutilização do código, o aPredicate tem o tipo IterateHandler. O valor de retorno de aPredicate controla a pesquisa: um WEAVE_ERROR_MAX sinaliza que o elemento desejado foi encontrado, WEAVE_NO_ERROR sinaliza que o elemento desejado não foi encontrado e todos os outros valores sinalizam que o contêiner deve ser encerrado.
[in] aContext
Um ponteiro opcional para dados de contexto fornecidos pelo autor da chamada.
[out] aResult
Uma referência ao armazenamento para um leitor TLV que será posicionado na tag especificada se a operação for bem-sucedida.
[in] aRecurse
É um booleano que indica se (verdadeiro) ou não (falso) as matrizes ou estruturas encontradas precisam ser descendentes.
Valores de retorno
WEAVE_NO_ERROR
Se a operação for bem-sucedida.
WEAVE_ERROR_TLV_TAG_NOT_FOUND
Se o aPredicate especificado não localizou o elemento especificado

FindHandler

WEAVE_ERROR FindHandler(
  const TLVReader & aReader,
  size_t aDepth,
  void *aContext
)

Pesquisa a tag especificada no leitor TLV fornecido.

Detalhes
Parâmetros
[in] aReader
Uma referência somente leitura ao leitor TLV em que a tag especificada é encontrada.
[in] aDepth
A profundidade atual nos dados TLV.
[in,out] aContext
Um ponteiro para o contexto específico do gerenciador.
Valores de retorno
WEAVE_NO_ERROR
Se a operação for bem-sucedida.
WEAVE_ERROR_INVALID_ARGUMENT
Se aContext for NULL.
WEAVE_ERROR_MAX
Se a tag especificada for encontrada.

FindPredicateHandler

WEAVE_ERROR FindPredicateHandler(
  const TLVReader & aReader,
  size_t aDepth,
  void *aContext
)

Iterar

WEAVE_ERROR Iterate(
  TLVReader & aReader,
  size_t aDepth,
  IterateHandler aHandler,
  void *aContext,
  bool aRecurse
)

Itere nos dados TLV referenciados por aReader e invoque aHandler para cada elemento TLV visitado no contexto de aContext.

A iteração será cancelada se aHandler retornar algo diferente de WEAVE_NO_ERROR

Detalhes
Parâmetros
[in] aReader
Uma referência ao leitor TLV que contém os dados TLV a serem iterados.
[in] aDepth
A profundidade atual nos dados TLV.
[in] aHandler
Um callback para invocar o elemento TLV atual que está sendo visitado.
[in,out] aContext
Um ponteiro opcional para dados de contexto fornecidos pelo autor da chamada.
[in] aRecurse
Um booleano que indica se (verdadeiro) ou não (falso) as matrizes ou estruturas encontradas devem ser descendentes.
Valores de retorno
WEAVE_END_OF_TLV
Em uma iteração bem-sucedida para o final de uma codificação TLV ou para o final de um contêiner TLV.
The
Último valor retornado por aHandler, se for diferente de WEAVE_NO_ERROR

Iterar

WEAVE_ERROR Iterate(
  const TLVReader & aReader,
  IterateHandler aHandler,
  void *aContext
)

Itere nos dados TLV referenciados por aReader e invoque aHandler para cada elemento TLV visitado no contexto de aContext.

A iteração será cancelada se aHandler retornar algo diferente de WEAVE_NO_ERROR

Detalhes
Parâmetros
[in] aReader
Uma referência ao leitor TLV que contém os dados TLV a serem iterados.
[in] aHandler
Um callback para invocar o elemento TLV atual que está sendo visitado.
[in,out] aContext
Um ponteiro opcional para dados de contexto fornecidos pelo autor da chamada.
Valores de retorno
WEAVE_END_OF_TLV
Em uma iteração bem-sucedida para o final de uma codificação TLV ou para o final de um contêiner TLV.
WEAVE_ERROR_INVALID_ARGUMENT
Se aHandler for NULL.
The
Último valor retornado por aHandler, se for diferente de WEAVE_NO_ERROR

Iterar

WEAVE_ERROR Iterate(
  const TLVReader & aReader,
  IterateHandler aHandler,
  void *aContext,
  const bool aRecurse
)

Itere nos dados TLV referenciados por aReader e invoque aHandler para cada elemento TLV visitado no contexto de aContext.

A iteração será cancelada se aHandler retornar algo diferente de WEAVE_NO_ERROR

Detalhes
Parâmetros
[in] aReader
Uma referência ao leitor TLV que contém os dados TLV a serem iterados.
[in] aHandler
Um callback para invocar o elemento TLV atual que está sendo visitado.
[in,out] aContext
Um ponteiro opcional para dados de contexto fornecidos pelo autor da chamada.
[in] aRecurse
Um booleano que indica se (verdadeiro) ou não (falso) as matrizes ou estruturas encontradas devem ser descendentes.
Valores de retorno
WEAVE_END_OF_TLV
Em uma iteração bem-sucedida para o final de uma codificação TLV ou para o final de um contêiner TLV.
WEAVE_ERROR_INVALID_ARGUMENT
Se aHandler for NULL.
The
Último valor retornado por aHandler, se for diferente de WEAVE_NO_ERROR