-struct append_visitor : boost::static_visitor<void>
-{
- mutable std::shared_ptr<ModelAPI_AttributeSelectionList> myAttribute;
-
- append_visitor(const std::shared_ptr<ModelAPI_AttributeSelectionList> & theAttribute)
- : myAttribute(theAttribute) {}
-
- void operator()(const ResultSubShapePair & thePair) const { myAttribute->append(thePair.first, thePair.second); }
- void operator()(const TypeSubShapeNamePair & thePair) const {
- // Note: the reverse order (first - type, second - sub-shape name)
- myAttribute->append(thePair.second, thePair.first);
- }
-};
-