Cadena de herramientas
En este módulo, se define una capa de abstracción de la cadena de herramientas a través de macros.
Resumen
Uso:
typedef OT_TOOL_PACKED_BEGIN struct { char mField1; union { char mField2; long mField3; } OT_TOOL_PACKED_FIELD; } OT_TOOL_PACKED_END packed_struct_t;
Macros
TS_APPLE_IGNORE_GNU_FOLDING_CONSTANT
OT_APPLE_IGNORE_GNU_FOLDING_CONSTANT __VA_ARGS__
TS_FALL_THROUGH
OT_FALL_THROUGH do \ { \ } while (false) /* fallthrough */
Elimina la advertencia de caída en un compilador específico.
TS_MUST_USE_RESULT
OT_MUST_USE_RESULT
Indicador específico del compilador que indica que se debe usar una clase o enumeración cuando es el valor de retorno de una función.
TS_TOOL_PACKED_BEGIN
OT_TOOL_PACKED_BEGIN
Indicador específico del compilador que indica que una clase o un struct deben estar empaquetados en bytes.
TS_TOOL_PACKED_FIELD
OT_TOOL_PACKED_FIELD
Indica al compilador una estructura o unión anidada que se empaquetará dentro de una estructura o clase empaquetada en bytes.
TS_TOOL_PRINTF_STYLE_FORMAT_ARG_CHECK
OT_TOOL_PRINTF_STYLE_FORMAT_ARG_CHECK
Esta macro especifica que una función o un método toma argumentos de estilo printf
y se debe verificar con una string de formato.
Esta macro se debe agregar después de la declaración de función o método. Por ejemplo:
void MyPrintf(void *aObject, const char *aFormat, ...) OT_TOOL_PRINTF_STYLE_FORMAT_ARG_CHECK(2, 3);
Los dos valores de índice de argumentos indican la string de formato y el primer argumento que se debe verificar. Comienzan en el índice 1 para el primer parámetro en una función y en el índice 2 para el primer parámetro en un método.
Detalles | |||||
---|---|---|---|---|---|
Parámetros |
|
TS_TOOL_WEAK
OT_TOOL_WEAK
Modificador de símbolos débiles específico del compilador.
TC_UNREACHABLE_CODE
OT_UNREACHABLE_CODE CODE
Elimina la advertencia de código inaccesible en cadenas de herramientas específicas.
TS_UNUSED_VARIABLE
OT_UNUSED_VARIABLE do \ { \ (void)(VARIABLE); \ } while (false)
Elimina la advertencia de variable sin usar en cadenas de herramientas específicas.
Recursos
Los temas de referencia de la API de OpenThread se originan a partir del código fuente, disponible en GitHub. Para obtener más información o contribuir con nuestra documentación, consulta Recursos.