Public Types | Public Member Functions | Public Attributes | Private Attributes | List of all members
sol::optional< T & > Class Template Reference

#include <sol.hpp>

Public Types

using value_type = T &
 

Public Member Functions

template<class F >
SOL_TL_OPTIONAL_11_CONSTEXPR detail::invoke_result_t< F, T & > and_then (F &&f) &
 
template<class F >
SOL_TL_OPTIONAL_11_CONSTEXPR detail::invoke_result_t< F, T & > and_then (F &&f) &&
 
template<class F >
constexpr detail::invoke_result_t< F, const T & > and_then (F &&f) const &
 
template<class F >
constexpr detail::invoke_result_t< F, const T & > and_then (F &&f) const &&
 
template<class U >
constexpr optional< typename std::decay< U >::typeconjunction (U &&u) const
 
SOL_TL_OPTIONAL_11_CONSTEXPR optional disjunction (const optional &rhs) &
 
SOL_TL_OPTIONAL_11_CONSTEXPR optional disjunction (const optional &rhs) &&
 \group disjunction More...
 
constexpr optional disjunction (const optional &rhs) const &
 \group disjunction More...
 
constexpr optional disjunction (const optional &rhs) const &&
 \group disjunction More...
 
SOL_TL_OPTIONAL_11_CONSTEXPR optional disjunction (optional &&rhs) &
 \group disjunction More...
 
SOL_TL_OPTIONAL_11_CONSTEXPR optional disjunction (optional &&rhs) &&
 \group disjunction More...
 
constexpr optional disjunction (optional &&rhs) const &
 \group disjunction More...
 
constexpr optional disjunction (optional &&rhs) const &&
 \group disjunction More...
 
template<class... Args>
T & emplace (Args &&... args) noexcept
 
constexpr bool has_value () const noexcept
 
template<class F , class U >
map_or (F &&f, U &&u) &
 Maps the stored value with f if there is one, otherwise returns u. More...
 
template<class F , class U >
map_or (F &&f, U &&u) &&
 \group map_or More...
 
template<class F , class U >
map_or (F &&f, U &&u) const &
 \group map_or More...
 
template<class F , class U >
map_or (F &&f, U &&u) const &&
 \group map_or More...
 
template<class F , class U >
detail::invoke_result_t< U > map_or_else (F &&f, U &&u) &
 Maps the stored value with f if there is one, otherwise calls u and returns the result. More...
 
template<class F , class U >
detail::invoke_result_t< U > map_or_else (F &&f, U &&u) &&
 
template<class F , class U >
detail::invoke_result_t< U > map_or_else (F &&f, U &&u) const &
 
template<class F , class U >
detail::invoke_result_t< U > map_or_else (F &&f, U &&u) const &&
 
constexpr operator bool () const noexcept
 \group has_value More...
 
SOL_TL_OPTIONAL_11_CONSTEXPR T & operator* ()
 
constexpr const T & operator* () const
 
SOL_TL_OPTIONAL_11_CONSTEXPR T * operator-> ()
 
constexpr const T * operator-> () const
 
optionaloperator= (const optional &rhs)=default
 
template<class U >
optionaloperator= (const optional< U > &rhs)
 
optionaloperator= (nullopt_t) noexcept
 
template<class U = T, detail::enable_if_t<!detail::is_optional< detail::decay_t< U >>::value > * = nullptr>
optionaloperator= (U &&u)
 
constexpr optional () noexcept
 
SOL_TL_OPTIONAL_11_CONSTEXPR optional (const optional &rhs) noexcept=default
 
template<class U >
constexpr optional (const optional< U > &rhs)
 \exclude More...
 
constexpr optional (nullopt_t) noexcept
 \group ctor_empty More...
 
SOL_TL_OPTIONAL_11_CONSTEXPR optional (optional &&rhs)=default
 
template<class U = T, detail::enable_if_t<!detail::is_optional< detail::decay_t< U >>::value > * = nullptr>
constexpr optional (U &&u)
 
template<class F , detail::enable_if_ret_void< F > * = nullptr>
optional< T > SOL_TL_OPTIONAL_11_CONSTEXPR or_else (F &&f) &
 Calls f if the optional is empty \requires std::invoke_result_t<F> must be void or convertible to optional<T>. \effects If *this has a value, returns *this. Otherwise, if f returns void, calls std::forward<F>(f) and returns std::nullopt. Otherwise, returns std::forward<F>(f)(). More...
 
template<class F , detail::disable_if_ret_void< F > * = nullptr>
optional< T > SOL_TL_OPTIONAL_11_CONSTEXPR or_else (F &&f) &
 \exclude More...
 
template<class F , detail::enable_if_ret_void< F > * = nullptr>
optional< T > or_else (F &&f) &&
 
template<class F , detail::disable_if_ret_void< F > * = nullptr>
optional< T > SOL_TL_OPTIONAL_11_CONSTEXPR or_else (F &&f) &&
 \exclude More...
 
template<class F , detail::enable_if_ret_void< F > * = nullptr>
optional< T > or_else (F &&f) const &
 
template<class F , detail::disable_if_ret_void< F > * = nullptr>
optional< T > SOL_TL_OPTIONAL_11_CONSTEXPR or_else (F &&f) const &
 \exclude More...
 
template<class F , detail::enable_if_ret_void< F > * = nullptr>
optional< T > or_else (F &&f) const &&
 \exclude More...
 
template<class F , detail::disable_if_ret_void< F > * = nullptr>
optional< T > or_else (F &&f) const &&
 \exclude More...
 
void reset () noexcept
 Destroys the stored value if one exists, making the optional empty. More...
 
void swap (optional &rhs) noexcept
 
optional take () &
 
optional take () &&
 \group take More...
 
optional take () const &
 \group take More...
 
optional take () const &&
 \group take More...
 
SOL_TL_OPTIONAL_11_CONSTEXPR T & value ()
 
const SOL_TL_OPTIONAL_11_CONSTEXPR T & value () const
 
template<class U >
constexpr T & value_or (U &&u) const
 
 ~optional ()=default
 No-op. More...
 

Public Attributes

template<class F >
decltype(detail::optional_map_impl(std::declval< optional & >(), std::declval< F && >())) SOL_TL_OPTIONAL_11_CONSTEXPR map (F &&f) &
 Carries out some operation on the stored object if there is one. More...
 
template<class F >
decltype(detail::optional_map_impl(std::declval< optional && >(), std::declval< F && >())) SOL_TL_OPTIONAL_11_CONSTEXPR map (F &&f) &&
 
template<class F >
constexpr decltype(detail::optional_map_impl(std::declval< const optional & >(), std::declval< F && >())) map (F &&f) const &
 
template<class F >
constexpr decltype(detail::optional_map_impl(std::declval< const optional && >(), std::declval< F && >())) map (F &&f) const &&
 

Private Attributes

T * m_value
 

Detailed Description

template<class T>
class sol::optional< T & >

Specialization for when T is a reference. optional<T&> acts similarly to a T*, but provides more operations and shows intent more clearly.

Examples:

int i = 42;
*o == 42; //true
i = 12;
*o = 12; //true
&*o == &i; //true

Assignment has rebind semantics rather than assign-through semantics:

int j = 8;
o = j;
&*o == &j; //true

Definition at line 6265 of file sol.hpp.

Member Typedef Documentation

◆ value_type

template<class T >
using sol::optional< T & >::value_type = T&

Definition at line 6673 of file sol.hpp.

Constructor & Destructor Documentation

◆ optional() [1/6]

template<class T >
constexpr sol::optional< T & >::optional ( )
inlineconstexprnoexcept

Constructs an optional that does not contain a value. \group ctor_empty

Definition at line 6677 of file sol.hpp.

◆ optional() [2/6]

template<class T >
constexpr sol::optional< T & >::optional ( nullopt_t  )
inlineconstexprnoexcept

\group ctor_empty

Definition at line 6681 of file sol.hpp.

◆ optional() [3/6]

template<class T >
SOL_TL_OPTIONAL_11_CONSTEXPR sol::optional< T & >::optional ( const optional< T & > &  rhs)
defaultnoexcept

Copy constructor

If rhs contains a value, the stored value is direct-initialized with it. Otherwise, the constructed optional is empty.

◆ optional() [4/6]

template<class T >
SOL_TL_OPTIONAL_11_CONSTEXPR sol::optional< T & >::optional ( optional< T & > &&  rhs)
default

Move constructor

If rhs contains a value, the stored value is direct-initialized with it. Otherwise, the constructed optional is empty.

◆ optional() [5/6]

template<class T >
template<class U = T, detail::enable_if_t<!detail::is_optional< detail::decay_t< U >>::value > * = nullptr>
constexpr sol::optional< T & >::optional ( U &&  u)
inlineconstexpr

Constructs the stored value with u. \synopsis template <class U=T>> constexpr optional(U &&u);

Definition at line 6699 of file sol.hpp.

◆ optional() [6/6]

template<class T >
template<class U >
constexpr sol::optional< T & >::optional ( const optional< U > &  rhs)
inlineexplicitconstexpr

\exclude

Definition at line 6705 of file sol.hpp.

◆ ~optional()

template<class T >
sol::optional< T & >::~optional ( )
default

No-op.

Member Function Documentation

◆ and_then() [1/4]

template<class T >
template<class F >
SOL_TL_OPTIONAL_11_CONSTEXPR detail::invoke_result_t<F, T&> sol::optional< T & >::and_then ( F &&  f) &
inline

\group and_then Carries out some operation which returns an optional on the stored object if there is one. \requires std::invoke(std::forward<F>(f), value()) returns a std::optional<U> for some U.

Returns
Let U be the result of std::invoke(std::forward<F>(f), value()). Returns a std::optional<U>. The return value is empty if *this is empty, otherwise the return value of std::invoke(std::forward<F>(f), value()) is returned. \group and_then \synopsis template <class F>
constexpr auto and_then(F &&f) &;

Definition at line 6329 of file sol.hpp.

◆ and_then() [2/4]

template<class T >
template<class F >
SOL_TL_OPTIONAL_11_CONSTEXPR detail::invoke_result_t<F, T&> sol::optional< T & >::and_then ( F &&  f) &&
inline

\group and_then \synopsis template <class F>
constexpr auto and_then(F &&f) &&;

Definition at line 6339 of file sol.hpp.

◆ and_then() [3/4]

template<class T >
template<class F >
constexpr detail::invoke_result_t<F, const T&> sol::optional< T & >::and_then ( F &&  f) const &
inlineconstexpr

\group and_then \synopsis template <class F>
constexpr auto and_then(F &&f) const &;

Definition at line 6349 of file sol.hpp.

◆ and_then() [4/4]

template<class T >
template<class F >
constexpr detail::invoke_result_t<F, const T&> sol::optional< T & >::and_then ( F &&  f) const &&
inlineconstexpr

\group and_then \synopsis template <class F>
constexpr auto and_then(F &&f) const &&;

Definition at line 6360 of file sol.hpp.

◆ conjunction()

template<class T >
template<class U >
constexpr optional<typename std::decay<U>::type> sol::optional< T & >::conjunction ( U &&  u) const
inlineconstexpr
Returns
u if *this has a value, otherwise an empty optional.

Definition at line 6592 of file sol.hpp.

◆ disjunction() [1/8]

template<class T >
SOL_TL_OPTIONAL_11_CONSTEXPR optional sol::optional< T & >::disjunction ( const optional< T & > &  rhs) &
inline
Returns
rhs if *this is empty, otherwise the current value. \group disjunction

Definition at line 6599 of file sol.hpp.

◆ disjunction() [2/8]

template<class T >
SOL_TL_OPTIONAL_11_CONSTEXPR optional sol::optional< T & >::disjunction ( const optional< T & > &  rhs) &&
inline

\group disjunction

Definition at line 6609 of file sol.hpp.

◆ disjunction() [3/8]

template<class T >
constexpr optional sol::optional< T & >::disjunction ( const optional< T & > &  rhs) const &
inlineconstexpr

\group disjunction

Definition at line 6604 of file sol.hpp.

◆ disjunction() [4/8]

template<class T >
constexpr optional sol::optional< T & >::disjunction ( const optional< T & > &  rhs) const &&
inlineconstexpr

\group disjunction

Definition at line 6615 of file sol.hpp.

◆ disjunction() [5/8]

template<class T >
SOL_TL_OPTIONAL_11_CONSTEXPR optional sol::optional< T & >::disjunction ( optional< T & > &&  rhs) &
inline

\group disjunction

Definition at line 6621 of file sol.hpp.

◆ disjunction() [6/8]

template<class T >
SOL_TL_OPTIONAL_11_CONSTEXPR optional sol::optional< T & >::disjunction ( optional< T & > &&  rhs) &&
inline

\group disjunction

Definition at line 6631 of file sol.hpp.

◆ disjunction() [7/8]

template<class T >
constexpr optional sol::optional< T & >::disjunction ( optional< T & > &&  rhs) const &
inlineconstexpr

\group disjunction

Definition at line 6626 of file sol.hpp.

◆ disjunction() [8/8]

template<class T >
constexpr optional sol::optional< T & >::disjunction ( optional< T & > &&  rhs) const &&
inlineconstexpr

\group disjunction

Definition at line 6637 of file sol.hpp.

◆ emplace()

template<class T >
template<class... Args>
T& sol::optional< T & >::emplace ( Args &&...  args)
inlinenoexcept

Constructs the value in-place, destroying the current one if there is one.

\group emplace

Definition at line 6751 of file sol.hpp.

◆ has_value()

template<class T >
constexpr bool sol::optional< T & >::has_value ( ) const
inlineconstexprnoexcept
Returns
whether or not the optional has a value \group has_value

Definition at line 6798 of file sol.hpp.

◆ map_or() [1/4]

template<class T >
template<class F , class U >
U sol::optional< T & >::map_or ( F &&  f,
U &&  u 
) &
inline

Maps the stored value with f if there is one, otherwise returns u.

If there is a value stored, then f is called with **this and the value is returned. Otherwise u is returned.

\group map_or

Definition at line 6526 of file sol.hpp.

◆ map_or() [2/4]

template<class T >
template<class F , class U >
U sol::optional< T & >::map_or ( F &&  f,
U &&  u 
) &&
inline

\group map_or

Definition at line 6532 of file sol.hpp.

◆ map_or() [3/4]

template<class T >
template<class F , class U >
U sol::optional< T & >::map_or ( F &&  f,
U &&  u 
) const &
inline

\group map_or

Definition at line 6538 of file sol.hpp.

◆ map_or() [4/4]

template<class T >
template<class F , class U >
U sol::optional< T & >::map_or ( F &&  f,
U &&  u 
) const &&
inline

\group map_or

Definition at line 6545 of file sol.hpp.

◆ map_or_else() [1/4]

template<class T >
template<class F , class U >
detail::invoke_result_t<U> sol::optional< T & >::map_or_else ( F &&  f,
U &&  u 
) &
inline

Maps the stored value with f if there is one, otherwise calls u and returns the result.

If there is a value stored, then f is called with **this and the value is returned. Otherwise std::forward<U>(u)() is returned.

\group map_or_else \synopsis template <class F, class U>
auto map_or_else(F &&f, U &&u) &;

Definition at line 6560 of file sol.hpp.

◆ map_or_else() [2/4]

template<class T >
template<class F , class U >
detail::invoke_result_t<U> sol::optional< T & >::map_or_else ( F &&  f,
U &&  u 
) &&
inline

\group map_or_else \synopsis template <class F, class U>
auto map_or_else(F &&f, U &&u) &&;

Definition at line 6568 of file sol.hpp.

◆ map_or_else() [3/4]

template<class T >
template<class F , class U >
detail::invoke_result_t<U> sol::optional< T & >::map_or_else ( F &&  f,
U &&  u 
) const &
inline

\group map_or_else \synopsis template <class F, class U>
auto map_or_else(F &&f, U &&u) const &;

Definition at line 6576 of file sol.hpp.

◆ map_or_else() [4/4]

template<class T >
template<class F , class U >
detail::invoke_result_t<U> sol::optional< T & >::map_or_else ( F &&  f,
U &&  u 
) const &&
inline

\group map_or_else \synopsis template <class F, class U>
auto map_or_else(F &&f, U &&u) const &&;

Definition at line 6585 of file sol.hpp.

◆ operator bool()

template<class T >
constexpr sol::optional< T & >::operator bool ( ) const
inlineexplicitconstexprnoexcept

\group has_value

Definition at line 6803 of file sol.hpp.

◆ operator*() [1/2]

template<class T >
SOL_TL_OPTIONAL_11_CONSTEXPR T& sol::optional< T & >::operator* ( )
inline
Returns
the stored value \requires a value is stored \group deref \synopsis constexpr T &operator*();

Definition at line 6786 of file sol.hpp.

◆ operator*() [2/2]

template<class T >
constexpr const T& sol::optional< T & >::operator* ( ) const
inlineconstexpr

\group deref \synopsis constexpr const T &operator*() const;

Definition at line 6792 of file sol.hpp.

◆ operator->() [1/2]

template<class T >
SOL_TL_OPTIONAL_11_CONSTEXPR T* sol::optional< T & >::operator-> ( )
inline

\group pointer \synopsis constexpr T *operator->();

Definition at line 6778 of file sol.hpp.

◆ operator->() [2/2]

template<class T >
constexpr const T* sol::optional< T & >::operator-> ( ) const
inlineconstexpr
Returns
a pointer to the stored value \requires a value is stored \group pointer \synopsis constexpr const T *operator->() const;

Definition at line 6772 of file sol.hpp.

◆ operator=() [1/4]

template<class T >
optional& sol::optional< T & >::operator= ( const optional< T & > &  rhs)
default

Copy assignment.

Rebinds this optional to the referee of rhs if there is one. Otherwise resets the stored value in *this.

◆ operator=() [2/4]

template<class T >
template<class U >
optional& sol::optional< T & >::operator= ( const optional< U > &  rhs)
inline

Converting copy assignment operator.

Rebinds this optional to the referee of rhs if there is one. Otherwise resets the stored value in *this.

Definition at line 6741 of file sol.hpp.

◆ operator=() [3/4]

template<class T >
optional& sol::optional< T & >::operator= ( nullopt_t  )
inlinenoexcept

Assignment to empty.

Destroys the current value if there is one.

Definition at line 6714 of file sol.hpp.

◆ operator=() [4/4]

template<class T >
template<class U = T, detail::enable_if_t<!detail::is_optional< detail::decay_t< U >>::value > * = nullptr>
optional& sol::optional< T & >::operator= ( U &&  u)
inline

Rebinds this optional to u.

\requires U must be an lvalue reference. \synopsis optional &operator=(U &&u);

Definition at line 6730 of file sol.hpp.

◆ or_else() [1/8]

template<class T >
template<class F , detail::enable_if_ret_void< F > * = nullptr>
optional<T> SOL_TL_OPTIONAL_11_CONSTEXPR sol::optional< T & >::or_else ( F &&  f) &
inline

Calls f if the optional is empty \requires std::invoke_result_t<F> must be void or convertible to optional<T>. \effects If *this has a value, returns *this. Otherwise, if f returns void, calls std::forward<F>(f) and returns std::nullopt. Otherwise, returns std::forward<F>(f)().

\group or_else \synopsis template <class F> optional<T> or_else (F &&f) &;

Definition at line 6452 of file sol.hpp.

◆ or_else() [2/8]

template<class T >
template<class F , detail::disable_if_ret_void< F > * = nullptr>
optional<T> SOL_TL_OPTIONAL_11_CONSTEXPR sol::optional< T & >::or_else ( F &&  f) &
inline

\exclude

Definition at line 6462 of file sol.hpp.

◆ or_else() [3/8]

template<class T >
template<class F , detail::enable_if_ret_void< F > * = nullptr>
optional<T> sol::optional< T & >::or_else ( F &&  f) &&
inline

\group or_else \synopsis template <class F> optional<T> or_else (F &&f) &&;

Definition at line 6469 of file sol.hpp.

◆ or_else() [4/8]

template<class T >
template<class F , detail::disable_if_ret_void< F > * = nullptr>
optional<T> SOL_TL_OPTIONAL_11_CONSTEXPR sol::optional< T & >::or_else ( F &&  f) &&
inline

\exclude

Definition at line 6479 of file sol.hpp.

◆ or_else() [5/8]

template<class T >
template<class F , detail::enable_if_ret_void< F > * = nullptr>
optional<T> sol::optional< T & >::or_else ( F &&  f) const &
inline

\group or_else \synopsis template <class F> optional<T> or_else (F &&f) const &;

Definition at line 6486 of file sol.hpp.

◆ or_else() [6/8]

template<class T >
template<class F , detail::disable_if_ret_void< F > * = nullptr>
optional<T> SOL_TL_OPTIONAL_11_CONSTEXPR sol::optional< T & >::or_else ( F &&  f) const &
inline

\exclude

Definition at line 6496 of file sol.hpp.

◆ or_else() [7/8]

template<class T >
template<class F , detail::enable_if_ret_void< F > * = nullptr>
optional<T> sol::optional< T & >::or_else ( F &&  f) const &&
inline

\exclude

Definition at line 6503 of file sol.hpp.

◆ or_else() [8/8]

template<class T >
template<class F , detail::disable_if_ret_void< F > * = nullptr>
optional<T> sol::optional< T & >::or_else ( F &&  f) const &&
inline

\exclude

Definition at line 6513 of file sol.hpp.

◆ reset()

template<class T >
void sol::optional< T & >::reset ( )
inlinenoexcept

Destroys the stored value if one exists, making the optional empty.

Definition at line 6841 of file sol.hpp.

◆ swap()

template<class T >
void sol::optional< T & >::swap ( optional< T & > &  rhs)
inlinenoexcept

Swaps this optional with the other.

If neither optionals have a value, nothing happens. If both have a value, the values are swapped. If one has a value, it is moved to the other and the movee is left valueless.

Definition at line 6764 of file sol.hpp.

◆ take() [1/4]

template<class T >
optional sol::optional< T & >::take ( ) &
inline

Takes the value out of the optional, leaving it empty \group take

Definition at line 6644 of file sol.hpp.

◆ take() [2/4]

template<class T >
optional sol::optional< T & >::take ( ) &&
inline

\group take

Definition at line 6658 of file sol.hpp.

◆ take() [3/4]

template<class T >
optional sol::optional< T & >::take ( ) const &
inline

\group take

Definition at line 6651 of file sol.hpp.

◆ take() [4/4]

template<class T >
optional sol::optional< T & >::take ( ) const &&
inline

\group take

Definition at line 6666 of file sol.hpp.

◆ value() [1/2]

template<class T >
SOL_TL_OPTIONAL_11_CONSTEXPR T& sol::optional< T & >::value ( )
inline
Returns
the contained value if there is one, otherwise throws [bad_optional_access] \group value synopsis constexpr T &value();

Definition at line 6811 of file sol.hpp.

◆ value() [2/2]

template<class T >
const SOL_TL_OPTIONAL_11_CONSTEXPR T& sol::optional< T & >::value ( ) const
inline

\group value \synopsis constexpr const T &value() const;

Definition at line 6822 of file sol.hpp.

◆ value_or()

template<class T >
template<class U >
constexpr T& sol::optional< T & >::value_or ( U &&  u) const
inlineconstexpr
Returns
the stored value if there is one, otherwise returns u \group value_or

Definition at line 6835 of file sol.hpp.

Member Data Documentation

◆ m_value

template<class T >
T* sol::optional< T & >::m_value
private

Definition at line 6846 of file sol.hpp.

◆ map [1/4]

template<class T >
template<class F >
decltype(detail::optional_map_impl(std::declval<optional&>(), std::declval<F&&>())) SOL_TL_OPTIONAL_11_CONSTEXPR sol::optional< T & >::map(F &&f) &
inline

Carries out some operation on the stored object if there is one.

Returns
Let U be the result of std::invoke(std::forward<F>(f), value()). Returns a std::optional<U>. The return value is empty if *this is empty, otherwise an optional<U> is constructed from the return value of std::invoke(std::forward<F>(f), value()) and is returned.

\group map \synopsis template <class F> auto map(F &&f) &;

Definition at line 6415 of file sol.hpp.

◆ map [2/4]

template<class T >
template<class F >
decltype(detail::optional_map_impl(std::declval<optional&&>(), std::declval<F&&>())) SOL_TL_OPTIONAL_11_CONSTEXPR sol::optional< T & >::map(F &&f) &&
inline

\group map \synopsis template <class F> auto map(F &&f) &&;

Definition at line 6422 of file sol.hpp.

◆ map [3/4]

template<class T >
template<class F >
constexpr decltype(detail::optional_map_impl(std::declval<const optional&>(), std::declval<F&&>())) sol::optional< T & >::map(F &&f) const &
inlineconstexpr

\group map \synopsis template <class F> auto map(F &&f) const&;

Definition at line 6429 of file sol.hpp.

◆ map [4/4]

template<class T >
template<class F >
constexpr decltype(detail::optional_map_impl(std::declval<const optional&&>(), std::declval<F&&>())) sol::optional< T & >::map(F &&f) const &&
inlineconstexpr

\group map \synopsis template <class F> auto map(F &&f) const&&;

Definition at line 6437 of file sol.hpp.


The documentation for this class was generated from the following file:
sol::optional
Definition: forward.hpp:1291


plotjuggler
Author(s): Davide Faconti
autogenerated on Sun Aug 11 2024 02:24:31