30#include <sptk5/wsdl/WSType.h>
47 ELEMENTS_AND_ATTRIBUTES = 3
112 return m_elementIndex;
121 return m_attributeIndex;
135 void forEach(
const std::function<
bool(
WSType*)>& method,
Group fieldType = Group::ELEMENTS_AND_ATTRIBUTES);
141 void forEach(
const std::function<
bool(
const WSType*)>& method,
Group fieldType = Group::ELEMENTS_AND_ATTRIBUTES)
const;
143 bool hasElements()
const;
145 bool hasAttributes()
const;
148 std::vector<WSType*> m_elements;
149 std::vector<WSType*> m_attributes;
151 std::map<String, WSType*> m_elementIndex;
152 std::map<String, WSType*> m_attributeIndex;
155using SWSFieldIndex = std::shared_ptr<WSFieldIndex>;
Definition: WSFieldIndex.h:38
WSFieldIndex(WSFieldIndex &&) noexcept
Definition: WSFieldIndex.h:72
void setElements(const Strings &fieldNames, std::initializer_list< WSType * > fieldList)
const std::map< String, WSType * > & elements() const
Definition: WSFieldIndex.h:110
WSType * find(const String &name) const
void setAttributes(const Strings &fieldNames, std::initializer_list< WSType * > fieldList)
WSFieldIndex & operator=(WSFieldIndex &&) noexcept
Definition: WSFieldIndex.h:87
void forEach(const std::function< bool(const WSType *)> &method, Group fieldType=Group::ELEMENTS_AND_ATTRIBUTES) const
void forEach(const std::function< bool(WSType *)> &method, Group fieldType=Group::ELEMENTS_AND_ATTRIBUTES)
WSFieldIndex(const WSFieldIndex &)
Definition: WSFieldIndex.h:65
WSFieldIndex & operator=(const WSFieldIndex &)
Definition: WSFieldIndex.h:79
Group
Definition: WSFieldIndex.h:44
const std::map< String, WSType * > & attributes() const
Definition: WSFieldIndex.h:119