[#BloombergLP-bdlar-ChoiceVtable]
= xref:BloombergLP.adoc[BloombergLP]::xref:BloombergLP/bdlar.adoc[bdlar]::ChoiceVtable
:relfileprefix: ../../
:mrdocs:

This struct stores a series of function pointers to wrappers that invoke the underlying methods of the supplied type erased object that implement the &quot;choice&quot; type category&period;

== Synopsis

Declared in `&lt;bdlar&lowbar;choicevtable&period;h&gt;`

[source,cpp,subs="verbatim,replacements,macros,-callouts"]
----
struct ChoiceVtable;
----

== Type Aliases

[cols="1,4"]
|===
| Name| Description
| xref:BloombergLP/bdlar/ChoiceVtable/MakeSelectionById.adoc[`MakeSelectionById`] 
| Function pointer type making a choice selection by id&period;
| xref:BloombergLP/bdlar/ChoiceVtable/MakeSelectionByName.adoc[`MakeSelectionByName`] 
| Function pointer type making a choice selection by name&period;
| xref:BloombergLP/bdlar/ChoiceVtable/ManipulateSelection.adoc[`ManipulateSelection`] 
| Function pointer type manipulating a choice selection&period;
| xref:BloombergLP/bdlar/ChoiceVtable/Reset.adoc[`Reset`] 
| Function pointer type resetting a choice object&period;
|===


== Data Members

[cols="1,4"]
|===
| Name| Description
| xref:BloombergLP/bdlar/ChoiceVtable/d_const.adoc[`d&lowbar;const`] 
| read&hyphen;only vtable
| xref:BloombergLP/bdlar/ChoiceVtable/d_makeSelectionById_fp.adoc[`d&lowbar;makeSelectionById&lowbar;fp`] 
| make selection by id
| xref:BloombergLP/bdlar/ChoiceVtable/d_makeSelectionByName_fp.adoc[`d&lowbar;makeSelectionByName&lowbar;fp`] 
| make selection by name
| xref:BloombergLP/bdlar/ChoiceVtable/d_manipulateSelection_fp.adoc[`d&lowbar;manipulateSelection&lowbar;fp`] 
| selection manipulator
| xref:BloombergLP/bdlar/ChoiceVtable/d_reset_fp.adoc[`d&lowbar;reset&lowbar;fp`] 
| reset function
|===



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