[#BloombergLP-bdlf-Bind_Evaluator-0b]
= xref:BloombergLP.adoc[BloombergLP]::xref:BloombergLP/bdlf.adoc[bdlf]::Bind&lowbar;Evaluator
:relfileprefix: ../../
:mrdocs:

Component&hyphen;private utility for evaluating a bound function call&period;

== Synopsis

Declared in `&lt;bdlf&lowbar;bind&period;h&gt;`

[source,cpp,subs="verbatim,replacements,macros,-callouts"]
----
template&lt;
    class BINDER,
    class t&lowbar;ARG&lowbar;TUPLE&gt;
struct Bind&lowbar;Evaluator;
----

== Type Aliases

[cols="1,4"]
|===
| Name| Description
| xref:BloombergLP/bdlf/Bind_Evaluator-0b/BoundType.adoc[`BoundType`] 
| Forwarding reference type for the bound tuple element&period;
|===


== Static Member Functions

[cols="1,4"]
|===
| Name| Description
| xref:BloombergLP/bdlf/Bind_Evaluator-0b/eval.adoc[`eval`] 
| Return the specified `value`&period;
|===


== Specializations

[cols="1,4"]
|===
| Name| Description
| xref:BloombergLP/bdlf/Bind_Evaluator-01.adoc[`Bind&lowbar;Evaluator&lt;PlaceHolder&lt;t&lowbar;INDEX&gt;, t&lowbar;ARG&lowbar;TUPLE&gt;`] 
| This partial specialization of `Bind&lowbar;Evaluator` provides an argument evaluator that substitutes the place&hyphen;holder at position `t&lowbar;INDEX` with the corresponding element in the specified `t&lowbar;ARG&lowbar;TUPLE`&period;
| xref:BloombergLP/bdlf/Bind_Evaluator-05.adoc[`Bind&lowbar;Evaluator&lt;Bind&lt;t&lowbar;RET, t&lowbar;FUNC, t&lowbar;BOUND&lowbar;TUPLE&gt;, t&lowbar;ARG&lowbar;TUPLE&gt;`] 
| This utility provides an evaluator for nested `Bind` arguments&period; The `Bind` function object is invoked using the provided argument list and the result is returned&period;
| xref:BloombergLP/bdlf/Bind_Evaluator-0a.adoc[`Bind&lowbar;Evaluator&lt;BindWrapper&lt;t&lowbar;RET, t&lowbar;FUNC, t&lowbar;BOUND&lowbar;TUPLE&gt;, t&lowbar;ARG&lowbar;TUPLE&gt;`] 
| This utility provides an evaluator for nested `BindWrapper` arguments&period; It is a specialization of the `Bind&lowbar;Evaluator` declared in the `bdlf&lowbar;bind` component to enable nested `BindWrapper` objects in the same fashion as nested `Bind` objects&period; The underlying `Bind` function object is invoked using the provided argument list and the result is returned&period;
|===



[.small]#Created with https://www.mrdocs.com[MrDocs]#
