Skip to main content

The value Struct Template Reference

Struct template representing a generic value, accessible via a getter. More...

Declaration

template <class T, class = int> struct micro_os_plus::micro_test_plus::type_traits::value<T, class> { ... }

Included Headers

Base struct

structop

Empty base struct for all operator types. More...

Derived Structs

struct_t<T>

Deprecated generic strongly-typed wrapper for explicit type conversion. More...

structto_t<T>

Generic strongly-typed wrapper for explicit type conversion. More...

Public Member Typedefs Index

template <class T, class = int>
usingvalue_type = T

The type of the encapsulated value. More...

Public Constructors Index

template <class T, class = int>
constexprvalue (const T &_value)

Constructs a value object with the specified value. More...

Public Operators Index

template <class T, class = int>
constexproperator T () const

Explicit conversion operator to the underlying value type. More...

Public Member Functions Index

template <class T, class = int>
constexpr auto get (void) const -> decltype(auto)

Getter for the encapsulated value. More...

Public Member Attributes Index

template <class T, class = int>
Tvalue_ {}

The encapsulated value. More...

Description

Struct template representing a generic value, accessible via a getter.

Template Parameters
T

The type of the value to be encapsulated.

Unused

An optional parameter for SFINAE or specialisation, defaults to int.

The value struct template encapsulates a value of type T, providing a consistent interface for value access and conversion. It inherits from type_traits::op to enable unified handling within the µTest++ framework's type traits and metaprogramming utilities.

This struct template exposes the value via a member variable, a getter method, and an explicit conversion operator. It is intended for use cases where a value must be wrapped and treated generically within the framework, supporting advanced template metaprogramming and type introspection.

Definition at line 971 of file type-traits.h.

Public Member Typedefs

value_type

template <class T, class = int>
using micro_os_plus::micro_test_plus::type_traits::value< T, class >::value_type = T

The type of the encapsulated value.

Definition at line 976 of file type-traits.h.

976 using value_type = T;

Public Constructors

value()

template <class T, class = int>
micro_os_plus::micro_test_plus::type_traits::value< T, class >::value (const T & _value)
inline constexpr

Constructs a value object with the specified value.

Parameters
_value

The value to be stored.

Definition at line 983 of file type-traits.h.

983 constexpr value (const T& _value) : value_{ _value }
984 {
985 }

Referenced by micro_os_plus::micro_test_plus::_t< T >::_t and micro_os_plus::micro_test_plus::to_t< T >::to_t.

Public Operators

operator T()

template <class T, class = int>
micro_os_plus::micro_test_plus::type_traits::value< T, class >::operator T ()
inline explicit nodiscard constexpr

Explicit conversion operator to the underlying value type.

Returns

The stored value as type T.

Allows explicit conversion to the encapsulated value.

Definition at line 996 of file type-traits.h.

996 operator T () const
997 {
998 return value_;
999 }

Public Member Functions

get()

template <class T, class = int>
decltype(auto) micro_os_plus::micro_test_plus::type_traits::value< T, class >::get (void)
inline nodiscard constexpr

Getter for the encapsulated value.

Parameters

None.

Returns

The value of type T.

Returns the stored value.

Definition at line 1012 of file type-traits.h.

1012 get (void) const
1013 {
1014 return value_;
1015 }

Public Member Attributes

value_

template <class T, class = int>
T micro_os_plus::micro_test_plus::type_traits::value< T, class >::value_ {}

The encapsulated value.

Definition at line 1020 of file type-traits.h.


The documentation for this struct was generated from the following file:


Generated via doxygen2docusaurus by Doxygen 1.14.0.