工具链
此模块通过宏定义工具链抽象层。
总结
用法:
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 开始。
详细信息 | |||||
---|---|---|---|---|---|
参数 |
|
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 上获取。如需了解详情或为我们的文档做贡献,请参阅资源。