工具鏈

這個模組透過巨集定義工具鍊抽象層。

摘要

使用方式:

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);

兩個引數索引值用於指出格式字串和第一個引數,藉此檢查該格式。它們會從函式中的第一個參數索引 1 開始,而方法中第一個參數的索引為 2。

詳細說明
參數
[in] aFmtIndex
格式字串的引數索引。
[in] aStartIndex
要檢查格式字串的第一個引數的引數索引。

OT_TOOL_WEAK

 OT_TOOL_WEAK

編譯器特定的弱符號修飾符。

OT_UNREACHABLE_CODE

 OT_UNREACHABLE_CODE CODE

隱藏特定工具鍊中的「無法連上程式碼」警告。

OT_UNUSED_VARIABLE

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

隱藏特定工具鍊中未使用的變數警告。

資源

OpenThread API 參考資料主題源自原始碼,請前往 GitHub 取得。如要瞭解詳情或對說明文件做出貢獻,請參閱資源