Zephyr API Documentation
4.4.99
A Scalable Open Source RTOS
Loading...
Searching...
No Matches
fff_extensions.h
Go to the documentation of this file.
1
/*
2
* Copyright (c) 2023 Legrand North America, LLC.
3
*
4
* SPDX-License-Identifier: Apache-2.0
5
*/
6
12
13
#ifndef ZEPHYR_SUBSYS_TESTSUITE_INCLUDE_ZEPHYR_FFF_EXTENSIONS_H_
14
#define ZEPHYR_SUBSYS_TESTSUITE_INCLUDE_ZEPHYR_FFF_EXTENSIONS_H_
15
16
#include <
zephyr/fff.h
>
17
#include <
zephyr/sys/util.h
>
/* for CONTAINER_OF */
18
28
77
78
#define RETURN_HANDLED_CONTEXT(FUNCNAME, CONTEXTTYPE, RESULTFIELD, CONTEXTPTRNAME, HANDLERBODY) \
79
if (FUNCNAME##_fake.return_val_seq_len) { \
80
CONTEXTTYPE * const contexts = \
81
CONTAINER_OF(FUNCNAME##_fake.return_val_seq, CONTEXTTYPE, RESULTFIELD); \
82
size_t const seq_idx = \
83
(FUNCNAME##_fake.return_val_seq_idx < FUNCNAME##_fake.return_val_seq_len) \
84
? FUNCNAME##_fake.return_val_seq_idx++ \
85
: FUNCNAME##_fake.return_val_seq_idx - 1; \
86
CONTEXTTYPE * const CONTEXTPTRNAME = &contexts[seq_idx]; \
87
HANDLERBODY; \
88
} \
89
return FUNCNAME##_fake.return_val
90
94
95
#endif
/* ZEPHYR_SUBSYS_TESTSUITE_INCLUDE_ZEPHYR_FFF_EXTENSIONS_H_ */
fff.h
util.h
Misc utilities.
subsys
testsuite
include
zephyr
fff_extensions.h
Generated on
for Zephyr API Documentation by
1.16.1