Those have 3 pointers at least, my limit for passing by value is trivial
copyability and two pointers. I hope that reflects the actual HW at
least vaguely, heh.
"Trade::MeshData::indicesInto(): the mesh is not indexed",);
CORRADE_ASSERT(destination.size()==indexCount(),"Trade::MeshData::indicesInto(): expected a view with"<<indexCount()<<"elements but got"<<destination.size(),);
CORRADE_ASSERT(attributeId!=~UnsignedInt{},"Trade::MeshData::positions2DInto(): index"<<id<<"out of range for"<<attributeCount(MeshAttribute::Position)<<"position attributes",);
CORRADE_ASSERT(destination.size()==_vertexCount,"Trade::MeshData::positions2DInto(): expected a view with"<<_vertexCount<<"elements but got"<<destination.size(),);
@ -491,7 +491,7 @@ Containers::Array<Vector2> MeshData::positions2DAsArray(const UnsignedInt id) co
CORRADE_ASSERT(attributeId!=~UnsignedInt{},"Trade::MeshData::positions3DInto(): index"<<id<<"out of range for"<<attributeCount(MeshAttribute::Position)<<"position attributes",);
CORRADE_ASSERT(destination.size()==_vertexCount,"Trade::MeshData::positions3DInto(): expected a view with"<<_vertexCount<<"elements but got"<<destination.size(),);
@ -574,7 +574,7 @@ Containers::Array<Vector3> MeshData::positions3DAsArray(const UnsignedInt id) co
CORRADE_ASSERT(attributeId!=~UnsignedInt{},"Trade::MeshData::tangentsInto(): index"<<id<<"out of range for"<<attributeCount(MeshAttribute::Tangent)<<"tangent attributes",);
CORRADE_ASSERT(destination.size()==_vertexCount,"Trade::MeshData::tangentsInto(): expected a view with"<<_vertexCount<<"elements but got"<<destination.size(),);
CORRADE_ASSERT(attributeId!=~UnsignedInt{},"Trade::MeshData::bitangentSignsInto(): index"<<id<<"out of range for"<<attributeCount(MeshAttribute::Tangent)<<"tangent attributes",);
CORRADE_ASSERT(destination.size()==_vertexCount,"Trade::MeshData::bitangentSignsInto(): expected a view with"<<_vertexCount<<"elements but got"<<destination.size(),);
@ -646,7 +646,7 @@ Containers::Array<Float> MeshData::bitangentSignsAsArray(const UnsignedInt id) c
CORRADE_ASSERT(attributeId!=~UnsignedInt{},"Trade::MeshData::bitangentsInto(): index"<<id<<"out of range for"<<attributeCount(MeshAttribute::Bitangent)<<"bitangent attributes",);
CORRADE_ASSERT(destination.size()==_vertexCount,"Trade::MeshData::bitangentsInto(): expected a view with"<<_vertexCount<<"elements but got"<<destination.size(),);
@ -662,7 +662,7 @@ Containers::Array<Vector3> MeshData::bitangentsAsArray(const UnsignedInt id) con
CORRADE_ASSERT(attributeId!=~UnsignedInt{},"Trade::MeshData::normalsInto(): index"<<id<<"out of range for"<<attributeCount(MeshAttribute::Normal)<<"normal attributes",);
CORRADE_ASSERT(destination.size()==_vertexCount,"Trade::MeshData::normalsInto(): expected a view with"<<_vertexCount<<"elements but got"<<destination.size(),);
CORRADE_ASSERT(attributeId!=~UnsignedInt{},"Trade::MeshData::textureCoordinates2DInto(): index"<<id<<"out of range for"<<attributeCount(MeshAttribute::TextureCoordinates)<<"texture coordinate attributes",);
CORRADE_ASSERT(destination.size()==_vertexCount,"Trade::MeshData::textureCoordinates2DInto(): expected a view with"<<_vertexCount<<"elements but got"<<destination.size(),);
CORRADE_ASSERT(attributeId!=~UnsignedInt{},"Trade::MeshData::colorsInto(): index"<<id<<"out of range for"<<attributeCount(MeshAttribute::Color)<<"color attributes",);
CORRADE_ASSERT(destination.size()==_vertexCount,"Trade::MeshData::colorsInto(): expected a view with"<<_vertexCount<<"elements but got"<<destination.size(),);
CORRADE_ASSERT(attributeId!=~UnsignedInt{},"Trade::MeshData::objectIdsInto(): index"<<id<<"out of range for"<<attributeCount(MeshAttribute::ObjectId)<<"object ID attributes",);
CORRADE_ASSERT(destination.size()==_vertexCount,"Trade::MeshData::objectIdsInto(): expected a view with"<<_vertexCount<<"elements but got"<<destination.size(),);