LCOV - code coverage report
Current view: top level - zephyr/shell - shell_backend.h Coverage Total Hit
Test: new.info Lines: 75.0 % 4 3
Test Date: 2025-09-05 16:43:28

            Line data    Source code
       1            0 : /*
       2              :  * Copyright (c) 2023 Meta
       3              :  *
       4              :  * SPDX-License-Identifier: Apache-2.0
       5              :  */
       6              : 
       7              : #ifndef ZEPHYR_INCLUDE_SHELL_BACKEND_H_
       8              : #define ZEPHYR_INCLUDE_SHELL_BACKEND_H_
       9              : 
      10              : #include <zephyr/types.h>
      11              : #include <zephyr/shell/shell.h>
      12              : #include <zephyr/sys/iterable_sections.h>
      13              : 
      14              : #ifdef __cplusplus
      15              : extern "C" {
      16              : #endif
      17              : 
      18              : /**
      19              :  * @brief Get backend.
      20              :  *
      21              :  * @param[in] idx  Pointer to the backend instance.
      22              :  *
      23              :  * @return Pointer to the backend instance.
      24              :  */
      25            1 : static inline const struct shell *shell_backend_get(uint32_t idx)
      26              : {
      27              :         const struct shell *backend;
      28              : 
      29              :         STRUCT_SECTION_GET(shell, idx, &backend);
      30              : 
      31              :         return backend;
      32              : }
      33              : 
      34              : /**
      35              :  * @brief Get number of backends.
      36              :  *
      37              :  * @return Number of backends.
      38              :  */
      39            1 : static inline int shell_backend_count_get(void)
      40              : {
      41              :         int cnt;
      42              : 
      43              :         STRUCT_SECTION_COUNT(shell, &cnt);
      44              : 
      45              :         return cnt;
      46              : }
      47              : 
      48              : /**
      49              :  * @brief Get backend by name.
      50              :  *
      51              :  * @param[in] backend_name Name of the backend as defined by the SHELL_DEFINE.
      52              :  *
      53              :  * @retval Pointer to the backend instance if found, NULL if backend is not found.
      54              :  */
      55            1 : const struct shell *shell_backend_get_by_name(const char *backend_name);
      56              : 
      57              : #ifdef __cplusplus
      58              : }
      59              : #endif
      60              : 
      61              : #endif /* ZEPHYR_INCLUDE_SHELL_BACKEND_H_ */
        

Generated by: LCOV version 2.0-1