#include <atomic>
#include <cstddef>
#include <mos/type_utils.hpp>
#include <mos/types.h>
#include <stdnoreturn.h>
#include <type_traits>
Go to the source code of this file.
|
| template<class P, class M> |
| constexpr size_t | __offsetof (const M P::*member) |
| template<class P, class M> |
| constexpr P * | __container_of (M *ptr, const M P::*member) |
| template<class P, class M> |
| constexpr const P * | __container_of (const M *ptr, const M P::*member) |
| template<typename TOut, typename TIn> |
| TOut * | cast (TIn *value) |
| template<typename TOut, typename TIn> |
| const TOut * | cast (const TIn *value) |
template<typename E>
requires std::is_enum_v<E> |
| constexpr Flags< E > | operator| (E a, E b) |
template<typename E>
requires std::is_enum_v<E> |
| constexpr void | operator~ (E a)=delete |
template<typename E>
requires std::is_enum_v<E> |
| constexpr void | operator& (E a, E b)=delete |
◆ container_of
| #define container_of |
( |
| ptr, |
|
|
| type, |
|
|
| member ) |
Value:
constexpr P * __container_of(M *ptr, const M P::*member)
Definition at line 33 of file types.hpp.
Referenced by acpi_sysfs_mmap(), break_the_order(), buddy_alloc_n_exact(), CPIO_INODE(), do_iterate_sdts(), dump_list(), extract_exact_range(), ipc_accept(), madt_parse_table(), naive_sched_add_thread(), naive_sched_init(), naive_sched_remove_thread(), naive_sched_select_next(), IPC_ControlIO::on_closed(), PipeIOImpl::on_closed(), PipeIOImpl::on_read(), PipeIOImpl::on_write(), sysfs_iops_create(), sysfs_iops_iterate_dir(), sysfs_iops_lookup(), and userfs_get().
◆ MOS_ENUM_FLAGS
| #define MOS_ENUM_FLAGS |
( |
| enum, |
|
|
| flags ) |
◆ atomic_t
◆ __offsetof()
template<class P, class M>
| size_t __offsetof |
( |
const M P::* | member | ) |
|
|
constexpr |
◆ __container_of() [1/2]
template<class P, class M>
| P * __container_of |
( |
M * | ptr, |
|
|
const M P::* | member ) |
|
inlineconstexpr |
◆ __container_of() [2/2]
template<class P, class M>
| const P * __container_of |
( |
const M * | ptr, |
|
|
const M P::* | member ) |
|
inlineconstexpr |
◆ cast() [1/2]
template<typename TOut, typename TIn>
| TOut * cast |
( |
TIn * | value | ) |
|
|
inline |
Definition at line 36 of file types.hpp.
Referenced by platform_pml1e_get_flags(), platform_pml1e_get_pfn(), platform_pml1e_get_present(), platform_pml1e_set_flags(), platform_pml1e_set_pfn(), platform_pml2e_get_flags(), platform_pml2e_get_huge_pfn(), platform_pml2e_get_pml1(), platform_pml2e_get_present(), platform_pml2e_is_huge(), platform_pml2e_set_flags(), platform_pml2e_set_huge(), platform_pml2e_set_pml1(), platform_pml3e_get_flags(), platform_pml3e_get_huge_pfn(), platform_pml3e_get_pml2(), platform_pml3e_get_present(), platform_pml3e_is_huge(), platform_pml3e_set_flags(), platform_pml3e_set_huge(), platform_pml3e_set_pml2(), platform_pml4e_get_flags(), platform_pml4e_get_pml3(), platform_pml4e_get_present(), platform_pml4e_set_flags(), and platform_pml4e_set_pml3().
◆ cast() [2/2]
template<typename TOut, typename TIn>
| const TOut * cast |
( |
const TIn * | value | ) |
|
|
inline |
◆ operator|()
template<typename E>
requires std::is_enum_v<E>
| Flags< E > operator| |
( |
E | a, |
|
|
E | b ) |
|
constexpr |
◆ operator~()
template<typename E>
requires std::is_enum_v<E>
◆ operator&()
template<typename E>
requires std::is_enum_v<E>
| void operator& |
( |
E | a, |
|
|
E | b ) |
|
constexprdelete |