8#ifndef INCLUDED_BDLAR_VTABLEUTIL
9#define INCLUDED_BDLAR_VTABLEUTIL
52#include <bdlar_typecategory.h>
58class SimpleTypeVtableUtil;
60class NullableValueVtableUtil;
62class SequenceVtableUtil;
63class ChoiceVtableUtil;
64class CustomizedTypeVtableUtil;
65class DynamicTypeVtableUtil;
71template <
class t_CATEGORY>
126 template <
class t_TYPE>
132 typedef typename Util::VtableType Vtable;
133 typedef typename Util::ConstVtableType ConstVtable;
138 template <
class t_TYPE>
139 static const typename ForType<t_TYPE>::ConstVtable *
getConstVtable();
141 template <
class t_TYPE>
142 static const typename ForType<t_TYPE>::Vtable *
getVtable();
154template <
class t_TYPE>
156const typename VtableUtil::ForType<t_TYPE>::ConstVtable *
159 typedef typename ForType<t_TYPE>::Util Util;
160 return Util::template getConstVtable<t_TYPE>();
163template <
class t_TYPE>
165const typename VtableUtil::ForType<t_TYPE>::Vtable *
168 typedef typename ForType<t_TYPE>::Util Util;
169 return Util::template getVtable<t_TYPE>();
Definition bdlar_arrayvtableutil.h:66
Definition bdlar_choicevtableutil.h:65
Definition bdlar_customizedtypevtableutil.h:66
Definition bdlar_dynamictypevtableutil.h:66
Definition bdlar_enumvtableutil.h:65
Definition bdlar_nullablevaluevtableutil.h:66
Definition bdlar_sequencevtableutil.h:65
Definition bdlar_simpletypevtableutil.h:65
Definition bdlar_vtableutil.h:123
static const ForType< t_TYPE >::Vtable * getVtable()
Definition bdlar_vtableutil.h:166
static const ForType< t_TYPE >::ConstVtable * getConstVtable()
Definition bdlar_vtableutil.h:157
#define BSLS_IDENT(str)
BSLS_IDENT() - insert string into .comment binary segment (if supported)
Definition bsls_ident.h:238
Definition bdlar_accessorref.h:59
ArrayVtableUtil Type
Definition bdlar_vtableutil.h:93
ChoiceVtableUtil Type
Definition bdlar_vtableutil.h:103
CustomizedTypeVtableUtil Type
Definition bdlar_vtableutil.h:108
DynamicTypeVtableUtil Type
Definition bdlar_vtableutil.h:113
EnumVtableUtil Type
Definition bdlar_vtableutil.h:78
NullableValueVtableUtil Type
Definition bdlar_vtableutil.h:83
SequenceVtableUtil Type
Definition bdlar_vtableutil.h:98
SimpleTypeVtableUtil Type
Definition bdlar_vtableutil.h:88
Definition bdlar_vtableutil.h:72
Definition bdlat_typecategory.h:1033
Definition bslmf_nil.h:133