aboutsummaryrefslogtreecommitdiffhomepage
path: root/include
diff options
context:
space:
mode:
authorGravatar Mike Reed <reed@google.com>2017-12-19 15:04:12 -0500
committerGravatar Skia Commit-Bot <skia-commit-bot@chromium.org>2017-12-19 20:34:06 +0000
commit92a2cfbcce155a05a34b4afeea7b1d0344effe82 (patch)
treeea8fb03a640491ae358e585410405cdbf520353d /include
parent5c6ac64516bb56bbdb5d7aedee1a348acc16e29b (diff)
macro to handle type-casting for SkFlattenable::Deserialize
Bug: skia: Change-Id: If64f166cc03c32b7423361178d319474be063f19 Reviewed-on: https://skia-review.googlesource.com/87260 Reviewed-by: Florin Malita <fmalita@chromium.org> Commit-Queue: Mike Reed <reed@google.com>
Diffstat (limited to 'include')
-rw-r--r--include/core/SkFlattenable.h6
1 files changed, 6 insertions, 0 deletions
diff --git a/include/core/SkFlattenable.h b/include/core/SkFlattenable.h
index 5faf7c2317..eaaf9c3d92 100644
--- a/include/core/SkFlattenable.h
+++ b/include/core/SkFlattenable.h
@@ -64,6 +64,12 @@ struct SkDeserialProcs;
} \
Type getFlattenableType() const override { \
return k##flattenable##_Type; \
+ } \
+ static sk_sp<flattenable> Deserialize(const void* data, size_t size, \
+ const SkDeserialProcs* procs = nullptr) { \
+ return sk_sp<flattenable>(static_cast<flattenable*>( \
+ SkFlattenable::Deserialize( \
+ k##flattenable##_Type, data, size, procs).release()));\
}
/** \class SkFlattenable