8#ifndef INCLUDED_BDLAT_SEQUENCEFUNCTIONS
9#define INCLUDED_BDLAT_SEQUENCEFUNCTIONS
641#include <bdlscm_version.h>
670 template <
class TYPE>
674 bslalg::HasTrait<TYPE, bdlat_TypeTraitBasicSequence>::value> {
691 template <
class TYPE,
class MANIPULATOR>
693 MANIPULATOR& manipulator,
694 const char *attributeName,
695 int attributeNameLength);
708 template <
class TYPE,
class MANIPULATOR>
710 MANIPULATOR& manipulator,
725 template <
class TYPE,
class MANIPULATOR>
741 template <
class TYPE,
class ACCESSOR>
744 const char *attributeName,
745 int attributeNameLength);
758 template <
class TYPE,
class ACCESSOR>
774 template <
class TYPE,
class ACCESSOR>
780 template <
class TYPE>
782 const char *attributeName,
783 int attributeNameLength);
787 template <
class TYPE>
803 template <
class TYPE,
class MANIPULATOR>
805 MANIPULATOR& manipulator,
806 const char *attributeName,
807 int attributeNameLength);
809 template <
class TYPE,
class MANIPULATOR>
811 MANIPULATOR& manipulator,
814 template <
class TYPE,
class MANIPULATOR>
816 MANIPULATOR& manipulator);
819 template <
class TYPE,
class ACCESSOR>
822 const char *attributeName,
823 int attributeNameLength);
825 template <
class TYPE,
class ACCESSOR>
830 template <
class TYPE,
class ACCESSOR>
833 template <
class TYPE>
835 const char *attributeName,
836 int attributeNameLength);
838 template <
class TYPE>
853template <
class TYPE,
class MANIPULATOR>
857 MANIPULATOR& manipulator,
858 const char *attributeName,
859 int attributeNameLength)
861 return bdlat_sequenceManipulateAttribute(
object,
864 attributeNameLength);
867template <
class TYPE,
class MANIPULATOR>
870 MANIPULATOR& manipulator,
876template <
class TYPE,
class MANIPULATOR>
879 MANIPULATOR& manipulator)
885template <
class TYPE,
class ACCESSOR>
889 const char *attributeName,
890 int attributeNameLength)
895 attributeNameLength);
898template <
class TYPE,
class ACCESSOR>
907template <
class TYPE,
class ACCESSOR>
918 const char *attributeName,
919 int attributeNameLength)
923 attributeNameLength);
940template <
class TYPE,
class MANIPULATOR>
944 MANIPULATOR& manipulator,
945 const char *attributeName,
946 int attributeNameLength)
951 return object->manipulateAttribute(manipulator,
953 attributeNameLength);
956template <
class TYPE,
class MANIPULATOR>
960 MANIPULATOR& manipulator,
966 return object->manipulateAttribute(manipulator, attributeId);
969template <
class TYPE,
class MANIPULATOR>
973 MANIPULATOR& manipulator)
978 return object->manipulateAttributes(manipulator);
982template <
class TYPE,
class ACCESSOR>
987 const char *attributeName,
988 int attributeNameLength)
993 return object.accessAttribute(accessor,
995 attributeNameLength);
998template <
class TYPE,
class ACCESSOR>
1008 return object.accessAttribute(accessor, attributeId);
1011template <
class TYPE,
class ACCESSOR>
1020 return object.accessAttributes(accessor);
1023template <
class TYPE>
1027 const char *attributeName,
1028 int attributeNameLength)
1033 return 0 !=
object.lookupAttributeInfo(attributeName, attributeNameLength);
1036template <
class TYPE>
1045 return 0 !=
object.lookupAttributeInfo(attributeId);
#define BSLMF_ASSERT(expr)
Definition bslmf_assert.h:231
#define BSLS_IDENT(str)
BSLS_IDENT() - insert string into .comment binary segment (if supported)
Definition bsls_ident.h:238
bool bdlat_sequenceHasAttribute(const SequenceRef &ref, const char *attributeName, int attributeNameLength)
Definition bdlar_sequenceref.h:487
int bdlat_sequenceAccessAttribute(const SequenceRef &ref, t_ACCESSOR &accessor, const char *attributeName, int attributeNameLength)
Definition bdlar_sequenceref.h:461
int bdlat_sequenceManipulateAttributes(SequenceRef *ref, t_MANIPULATOR &manipulator)
Definition bdlar_sequenceref.h:453
int bdlat_sequenceManipulateAttribute(SequenceRef *ref, t_MANIPULATOR &manipulator, const char *attributeName, int attributeNameLength)
Definition bdlar_sequenceref.h:432
int bdlat_sequenceAccessAttributes(const SequenceRef &ref, t_ACCESSOR &accessor)
Definition bdlar_sequenceref.h:480
Definition bdlar_sequenceref.h:657
bool bdlat_sequenceHasAttribute(const TYPE &object, const char *attributeName, int attributeNameLength)
int bdlat_sequenceAccessAttribute(const TYPE &object, ACCESSOR &accessor, const char *attributeName, int attributeNameLength)
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)
int bdlat_sequenceAccessAttributes(const TYPE &object, ACCESSOR &accessor)
int bdlat_sequenceManipulateAttribute(TYPE *object, MANIPULATOR &manipulator, const char *attributeName, int attributeNameLength)
int bdlat_sequenceManipulateAttributes(TYPE *object, MANIPULATOR &manipulator)
Definition bdlat_sequencefunctions.h:674
Definition bslmf_integralconstant.h:261
Definition bslalg_hastrait.h:117