8#ifndef INCLUDED_BDLAR_SEQUENCEVTABLEUTIL
9#define INCLUDED_BDLAR_SEQUENCEVTABLEUTIL
52#include <bdlar_sequencevtable.h>
73 template <
class t_SEQUENCE>
74 static int accessAttribute(
const void *
object,
84 template <
class t_SEQUENCE>
85 static int accessAttribute(
const void *
object,
87 const char *attributeName,
88 int attributeNameLength);
95 template <
class t_SEQUENCE>
96 static int accessAttributes(
const void *
object,
101 template <
class t_SEQUENCE>
102 static bool hasAttributeId(
const void *
object,
int attributeId);
107 template <
class t_SEQUENCE>
108 static bool hasAttributeName(
const void *
object,
109 const char *attributeName,
110 int attributeNameLength);
117 template <
class t_SEQUENCE>
118 static int manipulateAttribute(
void *
object,
127 template <
class t_SEQUENCE>
128 static int manipulateAttribute(
131 const char *attributeName,
132 int attributeNameLength);
139 template <
class t_SEQUENCE>
140 static int manipulateAttributes(
void *
object,
145 template <
class t_SEQUENCE>
146 static void reset(
void *
object);
149 template <
class t_SEQUENCE>
150 static const char *xsdName(
const void *
object,
int format);
161 template <
class t_SEQUENCE>
166 template <
class t_SEQUENCE>
179template <
class t_SEQUENCE>
180int SequenceVtableUtil::accessAttribute(
const void *
object,
185 *
static_cast<const t_SEQUENCE *
>(
object),
190template <
class t_SEQUENCE>
191int SequenceVtableUtil::accessAttribute(
193 AccessorWithInfoRef& accessor,
194 const char *attributeName,
195 int attributeNameLength)
198 *
static_cast<const t_SEQUENCE *
>(
object),
201 attributeNameLength);
204template <
class t_SEQUENCE>
205int SequenceVtableUtil::accessAttributes(
const void *
object,
206 AccessorWithInfoRef& accessor)
209 *
static_cast<const t_SEQUENCE *
>(
object),
213template <
class t_SEQUENCE>
214bool SequenceVtableUtil::hasAttributeId(
const void *
object,
int attributeId)
217 *
static_cast<const t_SEQUENCE *
>(
object),
221template <
class t_SEQUENCE>
222bool SequenceVtableUtil::hasAttributeName(
const void *
object,
223 const char *attributeName,
224 int attributeNameLength)
227 *
static_cast<const t_SEQUENCE *
>(
object),
229 attributeNameLength);
232template <
class t_SEQUENCE>
233int SequenceVtableUtil::manipulateAttribute(
235 ManipulatorWithInfoRef& manipulator,
239 static_cast<t_SEQUENCE *
>(
object),
244template <
class t_SEQUENCE>
245int SequenceVtableUtil::manipulateAttribute(
247 ManipulatorWithInfoRef& manipulator,
248 const char *attributeName,
249 int attributeNameLength)
252 static_cast<t_SEQUENCE *
>(
object),
255 attributeNameLength);
258template <
class t_SEQUENCE>
259int SequenceVtableUtil::manipulateAttributes(
261 ManipulatorWithInfoRef& manipulator)
264 static_cast<t_SEQUENCE *
>(
object),
268template <
class t_SEQUENCE>
269void SequenceVtableUtil::reset(
void *
object)
274template <
class t_SEQUENCE>
275const char *SequenceVtableUtil::xsdName(
const void *
object,
int format)
282template <
class t_SEQUENCE>
286 &hasAttributeName<t_SEQUENCE>,
287 &hasAttributeId<t_SEQUENCE>,
288 &accessAttribute<t_SEQUENCE>,
289 &accessAttribute<t_SEQUENCE>,
290 &accessAttributes<t_SEQUENCE>,
296template <
class t_SEQUENCE>
301 &hasAttributeName<t_SEQUENCE>,
302 &hasAttributeId<t_SEQUENCE>,
303 &accessAttribute<t_SEQUENCE>,
304 &accessAttribute<t_SEQUENCE>,
305 &accessAttributes<t_SEQUENCE>,
308 &manipulateAttribute<t_SEQUENCE>,
309 &manipulateAttribute<t_SEQUENCE>,
310 &manipulateAttributes<t_SEQUENCE>,
Definition bdlar_accessorref.h:109
Definition bdlar_manipulatorref.h:109
Definition bdlar_sequencevtableutil.h:65
static const SequenceVtable * getVtable()
Definition bdlar_sequencevtableutil.h:297
SequenceConstVtable ConstVtableType
Definition bdlar_sequencevtableutil.h:155
static const SequenceConstVtable * getConstVtable()
Definition bdlar_sequencevtableutil.h:283
SequenceVtable VtableType
Definition bdlar_sequencevtableutil.h:154
static const char * xsdName(const TYPE &object, int format)
Definition bdlat_typename.h:1047
#define BSLS_IDENT(str)
BSLS_IDENT() - insert string into .comment binary segment (if supported)
Definition bsls_ident.h:238
Definition bdlar_accessorref.h:59
int accessAttribute(const TYPE &object, ACCESSOR &accessor, const char *attributeName, int attributeNameLength)
int accessAttributes(const TYPE &object, ACCESSOR &accessor)
int manipulateAttribute(TYPE *object, MANIPULATOR &manipulator, const char *attributeName, int attributeNameLength)
int manipulateAttributes(TYPE *object, MANIPULATOR &manipulator)
bool hasAttribute(const TYPE &object, const char *attributeName, int attributeNameLength)
void reset(TYPE *object)
Reset the value of the specified object to its default value.
Definition bdlar_sequencevtable.h:69
Definition bdlar_sequencevtable.h:105