[#beman-optional-optional-03-and_then-02] = xref:beman.adoc[beman]::xref:beman/optional.adoc[optional]::xref:beman/optional/optional-03.adoc[optional]::and_then :relfileprefix: ../../../ :mrdocs: Applies a function to the contained value if there is one. == Synopses Declared in `<beman/optional/optional.hpp>` Applies a function to the contained value if there is one. [source,cpp,subs="verbatim,replacements,macros,-callouts"] ---- template<class F> constexpr auto xref:beman/optional/optional-03/and_then-03.adoc[and_then](F&& f) &; ---- [.small]#xref:beman/optional/optional-03/and_then-03.adoc[_» more..._]# Applies a function to the contained value if there is one. [source,cpp,subs="verbatim,replacements,macros,-callouts"] ---- template<class F> constexpr auto xref:beman/optional/optional-03/and_then-0d.adoc[and_then](F&& f) &&; ---- [.small]#xref:beman/optional/optional-03/and_then-0d.adoc[_» more..._]# Applies a function to the contained value if there is one. [source,cpp,subs="verbatim,replacements,macros,-callouts"] ---- template<class F> constexpr auto xref:beman/optional/optional-03/and_then-0c.adoc[and_then](F&& f) const &; ---- [.small]#xref:beman/optional/optional-03/and_then-0c.adoc[_» more..._]# Applies a function to the contained value if there is one. [source,cpp,subs="verbatim,replacements,macros,-callouts"] ---- template<class F> constexpr auto xref:beman/optional/optional-03/and_then-08.adoc[and_then](F&& f) const &&; ---- [.small]#xref:beman/optional/optional-03/and_then-08.adoc[_» more..._]# == Return Value auto == Template Parameters [cols="1,4"] |=== |Name|Description | *F* | The type of the invocable |=== == Parameters [cols="1,4"] |=== |Name|Description | *f* | The invocable to apply to the contained value |=== [.small]#Created with https://www.mrdocs.com[MrDocs]#