8#ifndef INCLUDED_BDLAT_SEQUENCEFUNCTIONS
9#define INCLUDED_BDLAT_SEQUENCEFUNCTIONS
615#include <bdlscm_version.h>
645 template <
class TYPE>
649 bslalg::HasTrait<TYPE, bdlat_TypeTraitBasicSequence>::value> {
660 template <
class TYPE,
class MANIPULATOR>
662 MANIPULATOR& manipulator,
663 const char *attributeName,
664 int attributeNameLength);
672 template <
class TYPE,
class MANIPULATOR>
674 MANIPULATOR& manipulator,
683 template <
class TYPE,
class MANIPULATOR>
694 template <
class TYPE,
class ACCESSOR>
697 const char *attributeName,
698 int attributeNameLength);
705 template <
class TYPE,
class ACCESSOR>
715 template <
class TYPE,
class ACCESSOR>
721 template <
class TYPE>
723 const char *attributeName,
724 int attributeNameLength);
728 template <
class TYPE>
746 template <
class TYPE,
class MANIPULATOR>
748 MANIPULATOR& manipulator,
749 const char *attributeName,
750 int attributeNameLength);
752 template <
class TYPE,
class MANIPULATOR>
754 MANIPULATOR& manipulator,
757 template <
class TYPE,
class MANIPULATOR>
759 MANIPULATOR& manipulator);
762 template <
class TYPE,
class ACCESSOR>
765 const char *attributeName,
766 int attributeNameLength);
768 template <
class TYPE,
class ACCESSOR>
773 template <
class TYPE,
class ACCESSOR>
776 template <
class TYPE>
778 const char *attributeName,
779 int attributeNameLength);
781 template <
class TYPE>
796template <
class TYPE,
class MANIPULATOR>
800 MANIPULATOR& manipulator,
801 const char *attributeName,
802 int attributeNameLength)
804 return bdlat_sequenceManipulateAttribute(
object,
807 attributeNameLength);
810template <
class TYPE,
class MANIPULATOR>
813 MANIPULATOR& manipulator,
819template <
class TYPE,
class MANIPULATOR>
822 MANIPULATOR& manipulator)
828template <
class TYPE,
class ACCESSOR>
832 const char *attributeName,
833 int attributeNameLength)
838 attributeNameLength);
841template <
class TYPE,
class ACCESSOR>
850template <
class TYPE,
class ACCESSOR>
861 const char *attributeName,
862 int attributeNameLength)
866 attributeNameLength);
883template <
class TYPE,
class MANIPULATOR>
887 MANIPULATOR& manipulator,
888 const char *attributeName,
889 int attributeNameLength)
894 return object->manipulateAttribute(manipulator,
896 attributeNameLength);
899template <
class TYPE,
class MANIPULATOR>
903 MANIPULATOR& manipulator,
909 return object->manipulateAttribute(manipulator, attributeId);
912template <
class TYPE,
class MANIPULATOR>
916 MANIPULATOR& manipulator)
921 return object->manipulateAttributes(manipulator);
925template <
class TYPE,
class ACCESSOR>
930 const char *attributeName,
931 int attributeNameLength)
936 return object.accessAttribute(accessor,
938 attributeNameLength);
941template <
class TYPE,
class ACCESSOR>
951 return object.accessAttribute(accessor, attributeId);
954template <
class TYPE,
class ACCESSOR>
963 return object.accessAttributes(accessor);
970 const char *attributeName,
971 int attributeNameLength)
976 return 0 !=
object.lookupAttributeInfo(attributeName, attributeNameLength);
988 return 0 !=
object.lookupAttributeInfo(attributeId);
#define BSLMF_ASSERT(expr)
Definition bslmf_assert.h:229
#define BSLS_IDENT(str)
Definition bsls_ident.h:195
Definition bdlat_sequencefunctions.h:635
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:649
Definition bslmf_integralconstant.h:244
Definition bslalg_hastrait.h:117