summaryrefslogtreecommitdiff
path: root/include/minikin/Hasher.h
diff options
context:
space:
mode:
Diffstat (limited to 'include/minikin/Hasher.h')
-rw-r--r--include/minikin/Hasher.h17
1 files changed, 16 insertions, 1 deletions
diff --git a/include/minikin/Hasher.h b/include/minikin/Hasher.h
index 4a76b29..dcfdd0b 100644
--- a/include/minikin/Hasher.h
+++ b/include/minikin/Hasher.h
@@ -18,9 +18,9 @@
#define MINIKIN_HASHER_H
#include <cstdint>
-
#include <string>
+#include "minikin/FontFeature.h"
#include "minikin/Macros.h"
namespace minikin {
@@ -57,6 +57,21 @@ public:
return update(bits.i);
}
+ inline Hasher& update(const std::vector<FontFeature>& features) {
+ uint32_t size = features.size();
+ update(size);
+ for (const FontFeature& feature : features) {
+ update(feature);
+ }
+ return *this;
+ }
+
+ inline Hasher& update(const FontFeature& feature) {
+ update(feature.tag);
+ update(feature.value);
+ return *this;
+ }
+
inline Hasher& updateShorts(const uint16_t* data, uint32_t length) {
update(length);
uint32_t i;