Add functionality to encode and decode a uint64_t in KeyedCoding
authorcommit-queue@webkit.org <commit-queue@webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Wed, 5 Sep 2018 17:03:02 +0000 (17:03 +0000)
committercommit-queue@webkit.org <commit-queue@webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Wed, 5 Sep 2018 17:03:02 +0000 (17:03 +0000)
commit5c43adc0d6cabcd6686390aa26306b77adef1f82
tree46ba7a76f57af83b64ae5ba6df7fb46bd86efe05
parentd2287dda85945490679076a595530f3c29006113
Add functionality to encode and decode a uint64_t in KeyedCoding
https://bugs.webkit.org/show_bug.cgi?id=189216

Patch by Woodrow Wang <woodrow_wang@apple.com> on 2018-09-05
Reviewed by Daniel Bates.

I've added this functionality in order to be able to encode and decode the raw uint64_t
representation of an OptionSet for my patch here <https://bugs.webkit.org/show_bug.cgi?id=187773>.

The changes in the KeyedEncoder/KeyedDecoder for Glib were made because they are derived classes
of KeyedCoding which contains pure virtual functions that need to be implemented.

* platform/KeyedCoding.h:
* platform/cf/KeyedDecoderCF.cpp:
(WebCore::KeyedDecoderCF::decodeUInt64):
* platform/cf/KeyedDecoderCF.h:
* platform/cf/KeyedEncoderCF.cpp:
(WebCore::KeyedEncoderCF::encodeUInt64):
* platform/cf/KeyedEncoderCF.h:
* platform/glib/KeyedDecoderGlib.cpp:
(WebCore::KeyedDecoderGlib::decodeUInt64):
* platform/glib/KeyedDecoderGlib.h:
* platform/glib/KeyedEncoderGlib.cpp:
(WebCore::KeyedEncoderGlib::encodeUInt64):
* platform/glib/KeyedEncoderGlib.h:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@235673 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Source/WebCore/ChangeLog
Source/WebCore/platform/KeyedCoding.h
Source/WebCore/platform/cf/KeyedDecoderCF.cpp
Source/WebCore/platform/cf/KeyedDecoderCF.h
Source/WebCore/platform/cf/KeyedEncoderCF.cpp
Source/WebCore/platform/cf/KeyedEncoderCF.h
Source/WebCore/platform/glib/KeyedDecoderGlib.cpp
Source/WebCore/platform/glib/KeyedDecoderGlib.h
Source/WebCore/platform/glib/KeyedEncoderGlib.cpp
Source/WebCore/platform/glib/KeyedEncoderGlib.h