[#bsl-select1st]
= xref:bsl.adoc[bsl]::select1st
:relfileprefix: ../
:mrdocs:

This `struct` is a functor that returns the `first` member of its `PAIR` argument&period;

== Synopsis

Declared in `&lt;bslstp&lowbar;exfunctional&period;h&gt;`

[source,cpp,subs="verbatim,replacements,macros,-callouts"]
----
template&lt;class PAIR&gt;
struct select1st;
----

== Type Aliases

[cols="1,4"]
|===
| Name| Description
| xref:bsl/select1st/argument_type.adoc[`argument&lowbar;type`] 
| This `typedef` is an alias to the (template parameter) `PAIR`&period;
| xref:bsl/select1st/result_type.adoc[`result&lowbar;type`] 
| This `typedef` is an alias to `PAIR&colon;&colon;first&lowbar;type`&period;
|===


== Member Functions

[cols="1,4"]
|===
| Name| Description
| xref:bsl/select1st/operator_call.adoc[`operator()`] 
| Return a reference to the `first` member of the specified `x`&period;
| xref:bsl/select1st/2conversion.adoc[`operator BloombergLP::bslmf::NestedTraitDeclaration&lt;select1st, is&lowbar;trivially&lowbar;copyable&gt;`] 
| Declare that `select1st` is trivially copyable&period;
|===



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