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_结果

 OT_MUST_USE_RESULT

特定于编译器的指示,是在类或枚举作为函数的返回值时必须使用。

加时赛加时赛

 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_TO_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 上获取。如需了解详情或为我们的文档做贡献,请参阅资源