Change to const ref for Spans.
diff --git a/dev/core_generator/lib/src/field_types/bytes_field_type.dart b/dev/core_generator/lib/src/field_types/bytes_field_type.dart
index 883ebc4..23a5d2e 100644
--- a/dev/core_generator/lib/src/field_types/bytes_field_type.dart
+++ b/dev/core_generator/lib/src/field_types/bytes_field_type.dart
@@ -5,7 +5,7 @@
: super(
'Bytes',
'CoreBytesType',
- cppName: 'Span<uint8_t>',
+ cppName: 'const Span<uint8_t>&',
include: 'rive/span.hpp',
);
diff --git a/include/rive/assets/file_asset_contents.hpp b/include/rive/assets/file_asset_contents.hpp
index 7cdfd3d..2304bb6 100644
--- a/include/rive/assets/file_asset_contents.hpp
+++ b/include/rive/assets/file_asset_contents.hpp
@@ -11,7 +11,7 @@
public:
const std::vector<uint8_t>& bytes() const;
StatusCode import(ImportStack& importStack) override;
- void decodeBytes(Span<uint8_t> value) override;
+ void decodeBytes(const Span<uint8_t>& value) override;
void copyBytes(const FileAssetContentsBase& object) override;
};
} // namespace rive
diff --git a/include/rive/generated/assets/file_asset_contents_base.hpp b/include/rive/generated/assets/file_asset_contents_base.hpp
index 10456cb..268976d 100644
--- a/include/rive/generated/assets/file_asset_contents_base.hpp
+++ b/include/rive/generated/assets/file_asset_contents_base.hpp
@@ -27,7 +27,7 @@
static const uint16_t bytesPropertyKey = 212;
public:
- virtual void decodeBytes(Span<uint8_t> value) = 0;
+ virtual void decodeBytes(const Span<uint8_t>& value) = 0;
virtual void copyBytes(const FileAssetContentsBase& object) = 0;
Core* clone() const override;
diff --git a/include/rive/generated/shapes/mesh_base.hpp b/include/rive/generated/shapes/mesh_base.hpp
index 736c86c..d9c8276 100644
--- a/include/rive/generated/shapes/mesh_base.hpp
+++ b/include/rive/generated/shapes/mesh_base.hpp
@@ -29,7 +29,7 @@
static const uint16_t triangleIndexBytesPropertyKey = 223;
public:
- virtual void decodeTriangleIndexBytes(Span<uint8_t> value) = 0;
+ virtual void decodeTriangleIndexBytes(const Span<uint8_t>& value) = 0;
virtual void copyTriangleIndexBytes(const MeshBase& object) = 0;
Core* clone() const override;
diff --git a/include/rive/shapes/mesh.hpp b/include/rive/shapes/mesh.hpp
index 3484fe4..de6828c 100644
--- a/include/rive/shapes/mesh.hpp
+++ b/include/rive/shapes/mesh.hpp
@@ -13,7 +13,7 @@
StatusCode onAddedDirty(CoreContext* context) override;
void markDrawableDirty();
void addVertex(MeshVertex* vertex);
- void decodeTriangleIndexBytes(Span<uint8_t> value) override;
+ void decodeTriangleIndexBytes(const Span<uint8_t>& value) override;
void copyTriangleIndexBytes(const MeshBase& object) override;
#ifdef TESTING
std::vector<MeshVertex*>& vertices() { return m_Vertices; }
diff --git a/src/assets/file_asset_contents.cpp b/src/assets/file_asset_contents.cpp
index 2ba8602..857f8f1 100644
--- a/src/assets/file_asset_contents.cpp
+++ b/src/assets/file_asset_contents.cpp
@@ -15,7 +15,7 @@
return Super::import(importStack);
}
-void FileAssetContents::decodeBytes(Span<uint8_t> value) {
+void FileAssetContents::decodeBytes(const Span<uint8_t>& value) {
m_Bytes = std::vector(value.begin(), value.end());
}
diff --git a/src/shapes/mesh.cpp b/src/shapes/mesh.cpp
index 76e90a0..686f60b 100644
--- a/src/shapes/mesh.cpp
+++ b/src/shapes/mesh.cpp
@@ -23,7 +23,7 @@
return StatusCode::Ok;
}
-void Mesh::decodeTriangleIndexBytes(Span<uint8_t> value) {
+void Mesh::decodeTriangleIndexBytes(const Span<uint8_t>& value) {
// decode the triangle index bytes
}