skia2/include
Ben Wagner 723a877d0c Make SkFunctionWrapper a better wrapper.
SkFunctionWrapper was made to be a simple abstraction over existing
resource release functions which generally follow a specific pattern of
returning void and taking a pointer to the underlying type. However,
this has been observed to be an unnecessary limit. This makes it more
generic while also making the call sites a little less brittle.

This change also uncovered an issue in msvc v19.20 to v19.22, see
https://developercommunity.visualstudio.com/content/problem/698192/in-templateusing-decltype-is-void.html
To work around this, several otherwise redundant '&' are used.

There was an attempt to take references to functions instead of pointers
to functions which greatly simplifies the intermediate wrappers.
However, that uncovered another issue in msvc, see
https://developercommunity.visualstudio.com/content/problem/699878/function-to-pointer.html

Change-Id: I54ab945ed9d9cfd0204d4d6650c2fde47cc9e175
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/235105
Commit-Queue: Ben Wagner <bungeman@google.com>
Reviewed-by: Herb Derby <herb@google.com>
2019-08-20 20:31:36 +00:00
..
android rewrite includes to not need so much -Ifoo 2019-04-24 16:27:11 +00:00
atlastext rewrite includes to not need so much -Ifoo 2019-04-24 16:27:11 +00:00
c Small fixes to C API. Add SK_API and fix function signature mismatch. 2019-06-07 01:29:23 +00:00
codec Hook up SkHeifCodec for ImageDecoder animation 2019-08-14 16:02:32 +00:00
config update SkUserConfig.h a bit 2019-05-20 17:52:22 +00:00
core Reland "Remove old version of MakeCrossContextFromPixmap" 2019-08-20 14:49:59 +00:00
docs rewrite includes to not need so much -Ifoo 2019-04-24 16:27:11 +00:00
effects Fix GMs broken during API porting 2019-08-05 14:53:45 +00:00
encode Revert "add runtime registration for encoders" 2019-05-15 22:02:39 +00:00
gpu Add kRequiresManualMSAAResolve to GrInternalSurfaceFlags 2019-08-19 15:04:30 +00:00
pathops rewrite includes to not need so much -Ifoo 2019-04-24 16:27:11 +00:00
ports Change GrCFResource to sk_cf_obj and move to include/ports. 2019-06-10 18:44:28 +00:00
private Make SkFunctionWrapper a better wrapper. 2019-08-20 20:31:36 +00:00
svg [SkSVGCanvas] Add flag for converting text to paths 2019-07-19 13:39:11 +00:00
third_party Roll skia/third_party/skcms 668026c511f3..853f66269c16 (2 commits) 2019-05-02 20:33:17 +00:00
utils Revert "Revert "Shuffle SkSL sources around so compiler and bytecode can be used w/o GPU"" 2019-06-18 14:47:12 +00:00