nl::Weave::TLV::Utilities

この名前空間には、Weave TLV の管理と操作のためのタイプとユーティリティ インターフェースが含まれています。

概要

Typedef

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

関数

Count(const TLVReader & aReader, size_t & aCount)
指定された TLV リーダー内の TLV 要素の数をカウントし、配列または構造体に降順にします。
Count(const TLVReader & aReader, size_t & aCount, const bool aRecurse)
指定された TLV リーダー内の TLV 要素の数をカウントし、必要に応じて配列または構造体に降順にします。
CountHandler(const TLVReader & aReader, size_t aDepth, void *aContext)
TLV データを反復処理する際にカウンタをインクリメントします。
Find(const TLVReader & aReader, const uint64_t & aTag, TLVReader & aResult)
指定された TLV リーダー内で指定されたタグを検索します。
Find(const TLVReader & aReader, const uint64_t & aTag, TLVReader & aResult, const bool aRecurse)
指定された TLV リーダー内で指定されたタグを検索します。必要に応じて配列または構造体に降順で並べます。
Find(const TLVReader & aReader, IterateHandler aPredicate, void *aContext, TLVReader & aResult)
TLV リーダー内で、述語に一致する最初の要素を配列または構造体に降順で検索します。
Find(const TLVReader & aReader, IterateHandler aPredicate, void *aContext, TLVReader & aResult, const bool aRecurse)
TLV リーダー内で、述語に一致する最初の要素を、必要に応じて配列または構造体に降順で検索します。
FindHandler(const TLVReader & aReader, size_t aDepth, void *aContext)
指定された TLV リーダー内で指定されたタグを検索します。
FindPredicateHandler(const TLVReader & aReader, size_t aDepth, void *aContext)
Iterate(TLVReader & aReader, size_t aDepth, IterateHandler aHandler, void *aContext, bool aRecurse)
aReader によって参照される TLV データを反復処理し、aContext のコンテキストで、アクセスされた TLV 要素ごとに aHandler を呼び出します。
Iterate(const TLVReader & aReader, IterateHandler aHandler, void *aContext)
aReader によって参照される TLV データを反復処理し、aContext のコンテキストで、アクセスされた TLV 要素ごとに aHandler を呼び出します。
Iterate(const TLVReader & aReader, IterateHandler aHandler, void *aContext, const bool aRecurse)
aReader によって参照される TLV データを反復処理し、aContext のコンテキストで、アクセスされた TLV 要素ごとに aHandler を呼び出します。

構造体

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

Typedef

IterateHandler

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

関数

カウント

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

指定された TLV リーダー内の TLV 要素の数をカウントし、配列または構造体に降順にします。

詳細
パラメータ
[in] aReader
TLV 要素の数をカウントする TLV リーダーへの読み取り専用参照。
[in,out] aCount
返された数のストレージへの参照。カウントの前にゼロ(0)に初期化され、成功時にカウントされた要素の数に設定されます。
戻り値
WEAVE_NO_ERROR
成功時。

カウント

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

指定された TLV リーダー内の TLV 要素の数をカウントし、必要に応じて配列または構造体に降順にします。

詳細
パラメータ
[in] aReader
TLV 要素の数をカウントする TLV リーダーへの読み取り専用参照。
[in,out] aCount
返された数のストレージへの参照。カウントの前にゼロ(0)に初期化され、成功時にカウントされた要素の数に設定されます。
[in] aRecurse
検出した配列または構造体の下位の階層(true)または無効(false)を示すブール値。
戻り値
WEAVE_NO_ERROR
成功時。

CountHandler

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

TLV データを反復処理する際にカウンタをインクリメントします。

詳細
パラメータ
[in] aReader
TLV 要素の数をカウントするための TLV データを含む TLV リーダーへの参照。
[in] aDepth
TLV データの現在の深度。
[in,out] aContext
ハンドラ固有のコンテキストへのポインタ。カウント値の保存先へのポインタです。
戻り値
WEAVE_NO_ERROR
成功時。
WEAVE_ERROR_INVALID_ARGUMENT
aContext が NULL の場合。

検索

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

指定された TLV リーダー内で指定されたタグを検索します。

詳細
パラメータ
[in] aReader
指定されたタグを検索する TLV リーダーへの読み取り専用参照。
[in] aTag
検索する TLV タグへの読み取り専用参照。
[out] aResult
成功すると指定されたタグに配置される TLV リーダーへのストレージへの参照。
戻り値
WEAVE_NO_ERROR
成功時。
WEAVE_ERROR_TLV_TAG_NOT_FOUND
指定されたタグ aTag が見つからなかった場合。

検索

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

指定された TLV リーダー内で指定されたタグを検索します。必要に応じて配列または構造体に降順で並べます。

詳細
パラメータ
[in] aReader
指定されたタグを検索する TLV リーダーへの読み取り専用参照。
[in] aTag
検索する TLV タグへの読み取り専用参照。
[out] aResult
成功すると指定されたタグに配置される TLV リーダーへのストレージへの参照。
[in] aRecurse
検出した配列または構造体の下位の階層(true)または無効(false)を示すブール値。
戻り値
WEAVE_NO_ERROR
成功時。
WEAVE_ERROR_TLV_TAG_NOT_FOUND
指定されたタグ aTag が見つからなかった場合。

検索

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

TLV リーダー内で、述語に一致する最初の要素を配列または構造体に降順で検索します。

aPredicate は、アクセスされた各 TLV 要素に適用されます。aPredicate は、一致する要素には WEAVE_ERROR_MAX、一致しない要素には WEAVE_NO_ERROR、検索を終了するその他の値を返します。

詳細
パラメータ
[in] aReader
述語に一致する要素を検索する TLV リーダーへの読み取り専用参照。
[in] aPredicate
TLV 要素に適用される述語。コードの再利用をサポートするために、aPredicate には IterateHandler 型が用意されています。aPredicate の戻り値は検索を制御します。WEAVE_ERROR_MAX は目的の要素が見つかったことを通知し、WEAVE_NO_ERROR は目的の要素が見つからなかったことを通知し、他のすべての値はサーチを終了する必要があることを通知します。
[in] aContext
呼び出し元が提供するコンテキスト データへのポインタ(省略可)。
[out] aResult
成功すると指定されたタグに配置される TLV リーダーへのストレージへの参照。
戻り値
WEAVE_NO_ERROR
成功時。
WEAVE_ERROR_TLV_TAG_NOT_FOUND
指定された aPredicate が指定された要素を見つけられなかった場合

検索

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

TLV リーダー内で、述語に一致する最初の要素を、必要に応じて配列または構造体に降順で検索します。

aPredicate は、アクセスされた各 TLV 要素に適用されます。aPredicate は、一致する要素には WEAVE_ERROR_MAX、一致しない要素には WEAVE_NO_ERROR、検索を終了するその他の値を返します。

詳細
パラメータ
[in] aReader
述語に一致する要素を検索する TLV リーダーへの読み取り専用参照。
[in] aPredicate
TLV 要素に適用される述語。コードの再利用をサポートするために、aPredicate には IterateHandler 型があります。aPredicate の戻り値は検索を制御します。WEAVE_ERROR_MAX は目的の要素が見つかったことを通知し、WEAVE_NO_ERROR は目的の要素が見つからなかったことを通知し、他のすべての値はサーチを終了する必要があることを通知します。
[in] aContext
呼び出し元が提供するコンテキスト データへのポインタ(省略可)。
[out] aResult
成功すると指定されたタグに配置される TLV リーダーへのストレージへの参照。
[in] aRecurse
検出した配列または構造体の子孫の参照(true)または無効(false)を示すブール値。
戻り値
WEAVE_NO_ERROR
成功時。
WEAVE_ERROR_TLV_TAG_NOT_FOUND
指定された aPredicate が指定された要素を見つけられなかった場合

FindHandler

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

指定された TLV リーダー内で指定されたタグを検索します。

詳細
パラメータ
[in] aReader
指定されたタグを検索する TLV リーダーへの読み取り専用参照。
[in] aDepth
TLV データの現在の深度。
[in,out] aContext
ハンドラ固有のコンテキストへのポインタ。
戻り値
WEAVE_NO_ERROR
成功時。
WEAVE_ERROR_INVALID_ARGUMENT
aContext が NULL の場合。
WEAVE_ERROR_MAX
指定されたタグが見つかった場合。

FindPredicateHandler

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

イテレーション

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

aReader によって参照される TLV データを反復処理し、aContext のコンテキストで、アクセスされた TLV 要素ごとに aHandler を呼び出します。

aHandlerWEAVE_NO_ERROR 以外を返すと、反復処理が中断されます

詳細
パラメータ
[in] aReader
反復する TLV データを含む TLV リーダーへの参照。
[in] aDepth
TLV データの現在の深度。
[in] aHandler
アクセスされている現在の TLV 要素に対して呼び出すコールバック。
[in,out] aContext
呼び出し元が提供するコンテキスト データへのポインタ(省略可)。
[in] aRecurse
検出した配列または構造体の下位の階層(true)または無効(false)を示すブール値。
戻り値
WEAVE_END_OF_TLV
イテレーションが成功した場合、TLV エンコードの最後、または TLV コンテナの最後まで。
The
aHandler によって返された最後の値(WEAVE_NO_ERROR と異なる場合)

イテレーション

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

aReader によって参照される TLV データを反復処理し、aContext のコンテキストで、アクセスされた TLV 要素ごとに aHandler を呼び出します。

aHandlerWEAVE_NO_ERROR 以外を返すと、反復処理が中断されます

詳細
パラメータ
[in] aReader
反復する TLV データを含む TLV リーダーへの参照。
[in] aHandler
アクセスされている現在の TLV 要素に対して呼び出すコールバック。
[in,out] aContext
呼び出し元が提供するコンテキスト データへのポインタ(省略可)。
戻り値
WEAVE_END_OF_TLV
イテレーションが成功した場合、TLV エンコードの最後、または TLV コンテナの最後まで。
WEAVE_ERROR_INVALID_ARGUMENT
aHandler が NULL の場合。
The
aHandler によって返された最後の値(WEAVE_NO_ERROR と異なる場合)

イテレーション

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

aReader によって参照される TLV データを反復処理し、aContext のコンテキストで、アクセスされた TLV 要素ごとに aHandler を呼び出します。

aHandlerWEAVE_NO_ERROR 以外を返すと、反復処理が中断されます

詳細
パラメータ
[in] aReader
反復する TLV データを含む TLV リーダーへの参照。
[in] aHandler
アクセスされている現在の TLV 要素に対して呼び出すコールバック。
[in,out] aContext
呼び出し元が提供するコンテキスト データへのポインタ(省略可)。
[in] aRecurse
検出した配列または構造体の下位の階層(true)または無効(false)を示すブール値。
戻り値
WEAVE_END_OF_TLV
イテレーションが成功した場合、TLV エンコードの最後、または TLV コンテナの最後まで。
WEAVE_ERROR_INVALID_ARGUMENT
aHandler が NULL の場合。
The
aHandler によって返された最後の値(WEAVE_NO_ERROR と異なる場合)