Google は、黒人コミュニティのための人種的公平の促進に取り組んでいます。詳細をご覧ください。
コレクションでコンテンツを整理 必要に応じて、コンテンツの保存と分類を行います。

ツールチェーン

このモジュールでは、マクロによるツールチェーン抽象化レイヤを定義します。

まとめ

使用方法:

typedef
OT_TOOL_PACKED_BEGIN
struct
{
    char mField1;
    union
    {
        char mField2;
        long mField3;
    } OT_TOOL_PACKED_FIELD;
} OT_TOOL_PACKED_END packed_struct_t;

マクロ

OT_APPLE_IGNORE_GNU_FOLDING_CONSTANT

 OT_APPLE_IGNORE_GNU_FOLDING_CONSTANT __VA_ARGS__

OT_FALL_THROUGH

 OT_FALL_THROUGH do                  \
    {                   \
    } while (false) /* fallthrough */

特定のコンパイラでの警告を抑制します。

OT_MUST_USE_Result

 OT_MUST_USE_RESULT

クラスまたは列挙型が関数の戻り値の場合に使用します。

OT_TOOL_PACKED_BEGIN

 OT_TOOL_PACKED_BEGIN

クラスまたは構造体がバイトパックする必要があることをコンパイラごとに示します。

OT_TOOL_PACKED_FIELD

 OT_TOOL_PACKED_FIELD

バイトパックのクラスまたは構造体にネストする構造体または共用体をコンパイラに指定します。

OT_TOOL_PRINTF_STYLE_FORMAT_ARG_CHECK

 OT_TOOL_PRINTF_STYLE_FORMAT_ARG_CHECK

このマクロは、関数またはメソッドが printf スタイルの引数を受け取り、形式設定文字列とタイプチェックする必要があることを指定します。

このマクロは関数やメソッドの宣言の後に追加する必要があります。例:

void MyPrintf(void *aObject, const char *aFormat, ...) OT_TOOL_PRINTF_STYLE_FORMAT_ARG_CHECK(2, 3);

2 つの引数のインデックス値は、フォーマット文字列とそれをチェックする最初の引数を示します。関数の最初のパラメータのインデックス 1 から開始し、メソッドの最初のパラメータのインデックス 2 から開始します。

詳細
パラメータ
[in] aFmtIndex
形式設定文字列の引数インデックス。
[in] aStartIndex
形式設定文字列と照合する最初の引数の引数インデックス。

OT_TOOL_WEAK

 OT_TOOL_WEAK

コンパイラ固有の弱記号修飾子。

OT_UNREACHABLE_CODE

 OT_UNREACHABLE_CODE CODE

特定のツールチェーンにアクセス不能なコードの警告を抑制しました。

OT_UNUSE_VARIABLE 個

 OT_UNUSED_VARIABLE do                               \
    {                                \
        (void)(VARIABLE);            \
    } while (false)

特定のツールチェーンで未使用の変数の警告を抑制します。

リソース

OpenThread API リファレンスのトピックは、GitHub で入手可能なソースコードから始まります。詳細や Google のドキュメントへの貢献については、リソースをご覧ください。