<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"
"http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head><meta http-equiv="content-type" content="text/html; charset=utf-8" />
<title>[209962] trunk/Source/WebCore</title>
</head>
<body>
<style type="text/css"><!--
#msg dl.meta { border: 1px #006 solid; background: #369; padding: 6px; color: #fff; }
#msg dl.meta dt { float: left; width: 6em; font-weight: bold; }
#msg dt:after { content:':';}
#msg dl, #msg dt, #msg ul, #msg li, #header, #footer, #logmsg { font-family: verdana,arial,helvetica,sans-serif; font-size: 10pt; }
#msg dl a { font-weight: bold}
#msg dl a:link { color:#fc3; }
#msg dl a:active { color:#ff0; }
#msg dl a:visited { color:#cc6; }
h3 { font-family: verdana,arial,helvetica,sans-serif; font-size: 10pt; font-weight: bold; }
#msg pre { overflow: auto; background: #ffc; border: 1px #fa0 solid; padding: 6px; }
#logmsg { background: #ffc; border: 1px #fa0 solid; padding: 1em 1em 0 1em; }
#logmsg p, #logmsg pre, #logmsg blockquote { margin: 0 0 1em 0; }
#logmsg p, #logmsg li, #logmsg dt, #logmsg dd { line-height: 14pt; }
#logmsg h1, #logmsg h2, #logmsg h3, #logmsg h4, #logmsg h5, #logmsg h6 { margin: .5em 0; }
#logmsg h1:first-child, #logmsg h2:first-child, #logmsg h3:first-child, #logmsg h4:first-child, #logmsg h5:first-child, #logmsg h6:first-child { margin-top: 0; }
#logmsg ul, #logmsg ol { padding: 0; list-style-position: inside; margin: 0 0 0 1em; }
#logmsg ul { text-indent: -1em; padding-left: 1em; }#logmsg ol { text-indent: -1.5em; padding-left: 1.5em; }
#logmsg > ul, #logmsg > ol { margin: 0 0 1em 0; }
#logmsg pre { background: #eee; padding: 1em; }
#logmsg blockquote { border: 1px solid #fa0; border-left-width: 10px; padding: 1em 1em 0 1em; background: white;}
#logmsg dl { margin: 0; }
#logmsg dt { font-weight: bold; }
#logmsg dd { margin: 0; padding: 0 0 0.5em 0; }
#logmsg dd:before { content:'\00bb';}
#logmsg table { border-spacing: 0px; border-collapse: collapse; border-top: 4px solid #fa0; border-bottom: 1px solid #fa0; background: #fff; }
#logmsg table th { text-align: left; font-weight: normal; padding: 0.2em 0.5em; border-top: 1px dotted #fa0; }
#logmsg table td { text-align: right; border-top: 1px dotted #fa0; padding: 0.2em 0.5em; }
#logmsg table thead th { text-align: center; border-bottom: 1px solid #fa0; }
#logmsg table th.Corner { text-align: left; }
#logmsg hr { border: none 0; border-top: 2px dashed #fa0; height: 1px; }
#header, #footer { color: #fff; background: #636; border: 1px #300 solid; padding: 6px; }
#patch { width: 100%; }
#patch h4 {font-family: verdana,arial,helvetica,sans-serif;font-size:10pt;padding:8px;background:#369;color:#fff;margin:0;}
#patch .propset h4, #patch .binary h4 {margin:0;}
#patch pre {padding:0;line-height:1.2em;margin:0;}
#patch .diff {width:100%;background:#eee;padding: 0 0 10px 0;overflow:auto;}
#patch .propset .diff, #patch .binary .diff {padding:10px 0;}
#patch span {display:block;padding:0 10px;}
#patch .modfile, #patch .addfile, #patch .delfile, #patch .propset, #patch .binary, #patch .copfile {border:1px solid #ccc;margin:10px 0;}
#patch ins {background:#dfd;text-decoration:none;display:block;padding:0 10px;}
#patch del {background:#fdd;text-decoration:none;display:block;padding:0 10px;}
#patch .lines, .info {color:#888;background:#fff;}
--></style>
<div id="msg">
<dl class="meta">
<dt>Revision</dt> <dd><a href="http://trac.webkit.org/projects/webkit/changeset/209962">209962</a></dd>
<dt>Author</dt> <dd>darin@apple.com</dd>
<dt>Date</dt> <dd>2016-12-17 08:42:03 -0800 (Sat, 17 Dec 2016)</dd>
</dl>
<h3>Log Message</h3>
<pre>Remove WebCore::Dictionary, which is now unused
https://bugs.webkit.org/show_bug.cgi?id=165988
Reviewed by Andreas Kling.
* CMakeLists.txt: Removed the files.
* WebCore.xcodeproj/project.pbxproj: Ditto.
* bindings/js/Dictionary.cpp: Removed.
* bindings/js/Dictionary.h: Removed.
* bindings/js/JSBindingsAllInOne.cpp: Removed include of Dictionary.cpp.</pre>
<h3>Modified Paths</h3>
<ul>
<li><a href="#trunkSourceWebCoreCMakeListstxt">trunk/Source/WebCore/CMakeLists.txt</a></li>
<li><a href="#trunkSourceWebCoreChangeLog">trunk/Source/WebCore/ChangeLog</a></li>
<li><a href="#trunkSourceWebCoreWebCorexcodeprojprojectpbxproj">trunk/Source/WebCore/WebCore.xcodeproj/project.pbxproj</a></li>
<li><a href="#trunkSourceWebCorebindingsjsJSBindingsAllInOnecpp">trunk/Source/WebCore/bindings/js/JSBindingsAllInOne.cpp</a></li>
</ul>
<h3>Removed Paths</h3>
<ul>
<li><a href="#trunkSourceWebCorebindingsjsDictionarycpp">trunk/Source/WebCore/bindings/js/Dictionary.cpp</a></li>
<li><a href="#trunkSourceWebCorebindingsjsDictionaryh">trunk/Source/WebCore/bindings/js/Dictionary.h</a></li>
</ul>
</div>
<div id="patch">
<h3>Diff</h3>
<a id="trunkSourceWebCoreCMakeListstxt"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/CMakeLists.txt (209961 => 209962)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/CMakeLists.txt        2016-12-17 10:33:12 UTC (rev 209961)
+++ trunk/Source/WebCore/CMakeLists.txt        2016-12-17 16:42:03 UTC (rev 209962)
</span><span class="lines">@@ -1077,7 +1077,6 @@
</span><span class="cx"> bindings/js/CallbackFunction.cpp
</span><span class="cx"> bindings/js/CommonVM.cpp
</span><span class="cx"> bindings/js/DOMWrapperWorld.cpp
</span><del>- bindings/js/Dictionary.cpp
</del><span class="cx"> bindings/js/GCController.cpp
</span><span class="cx"> bindings/js/IDBBindingUtilities.cpp
</span><span class="cx"> bindings/js/JSAnimationTimelineCustom.cpp
</span></span></pre></div>
<a id="trunkSourceWebCoreChangeLog"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/ChangeLog (209961 => 209962)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/ChangeLog        2016-12-17 10:33:12 UTC (rev 209961)
+++ trunk/Source/WebCore/ChangeLog        2016-12-17 16:42:03 UTC (rev 209962)
</span><span class="lines">@@ -1,3 +1,16 @@
</span><ins>+2016-12-17 Darin Adler <darin@apple.com>
+
+ Remove WebCore::Dictionary, which is now unused
+ https://bugs.webkit.org/show_bug.cgi?id=165988
+
+ Reviewed by Andreas Kling.
+
+ * CMakeLists.txt: Removed the files.
+ * WebCore.xcodeproj/project.pbxproj: Ditto.
+ * bindings/js/Dictionary.cpp: Removed.
+ * bindings/js/Dictionary.h: Removed.
+ * bindings/js/JSBindingsAllInOne.cpp: Removed include of Dictionary.cpp.
+
</ins><span class="cx"> 2016-12-17 Youenn Fablet <youenn@apple.com>
</span><span class="cx">
</span><span class="cx"> Cloned CachedResource should not have an empty response
</span></span></pre></div>
<a id="trunkSourceWebCoreWebCorexcodeprojprojectpbxproj"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/WebCore.xcodeproj/project.pbxproj (209961 => 209962)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/WebCore.xcodeproj/project.pbxproj        2016-12-17 10:33:12 UTC (rev 209961)
+++ trunk/Source/WebCore/WebCore.xcodeproj/project.pbxproj        2016-12-17 16:42:03 UTC (rev 209962)
</span><span class="lines">@@ -1331,7 +1331,6 @@
</span><span class="cx">                 3128CA68147331520074C72A /* NotificationController.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3128CA67147331520074C72A /* NotificationController.cpp */; };
</span><span class="cx">                 3128CA6B147331630074C72A /* NotificationController.h in Headers */ = {isa = PBXBuildFile; fileRef = 3128CA6A147331630074C72A /* NotificationController.h */; settings = {ATTRIBUTES = (Private, ); }; };
</span><span class="cx">                 312C0C41146DC6CC0016C911 /* Notification.h in Headers */ = {isa = PBXBuildFile; fileRef = 333F704F0FB49CA2008E12A6 /* Notification.h */; settings = {ATTRIBUTES = (Private, ); }; };
</span><del>-                312D67B11535691F00563D0D /* Dictionary.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 312D67B01535691F00563D0D /* Dictionary.cpp */; };
</del><span class="cx">                 31313F651443B35F006E2A90 /* FilterEffectRenderer.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 31313F631443B35E006E2A90 /* FilterEffectRenderer.cpp */; };
</span><span class="cx">                 31313F661443B35F006E2A90 /* FilterEffectRenderer.h in Headers */ = {isa = PBXBuildFile; fileRef = 31313F641443B35E006E2A90 /* FilterEffectRenderer.h */; };
</span><span class="cx">                 3140379B124BEA7F00AF40E4 /* WebCoreMotionManager.h in Headers */ = {isa = PBXBuildFile; fileRef = 31403797124BEA7F00AF40E4 /* WebCoreMotionManager.h */; };
</span><span class="lines">@@ -1346,7 +1345,6 @@
</span><span class="cx">                 314BE3A31B30F6D100141982 /* CSSNamedImageValue.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 314BE3A21B30F6D100141982 /* CSSNamedImageValue.cpp */; };
</span><span class="cx">                 314BE3A61B3103FB00141982 /* NamedImageGeneratedImage.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 314BE3A41B3103FB00141982 /* NamedImageGeneratedImage.cpp */; };
</span><span class="cx">                 314BE3A71B3103FB00141982 /* NamedImageGeneratedImage.h in Headers */ = {isa = PBXBuildFile; fileRef = 314BE3A51B3103FB00141982 /* NamedImageGeneratedImage.h */; };
</span><del>-                316023F01532C40C00D50FF4 /* Dictionary.h in Headers */ = {isa = PBXBuildFile; fileRef = 316023EF1532C40C00D50FF4 /* Dictionary.h */; settings = {ATTRIBUTES = (Private, ); }; };
</del><span class="cx">                 316FE0710E6CCBEE00BF6088 /* JSCSSKeyframeRule.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 316FE06D0E6CCBEE00BF6088 /* JSCSSKeyframeRule.cpp */; };
</span><span class="cx">                 316FE0720E6CCBEE00BF6088 /* JSCSSKeyframeRule.h in Headers */ = {isa = PBXBuildFile; fileRef = 316FE06E0E6CCBEE00BF6088 /* JSCSSKeyframeRule.h */; };
</span><span class="cx">                 316FE0730E6CCBEE00BF6088 /* JSCSSKeyframesRule.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 316FE06F0E6CCBEE00BF6088 /* JSCSSKeyframesRule.cpp */; };
</span><span class="lines">@@ -8470,7 +8468,6 @@
</span><span class="cx">                 31288E710E3005D6003619AE /* CSSKeyframesRule.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CSSKeyframesRule.h; sourceTree = "<group>"; };
</span><span class="cx">                 3128CA67147331520074C72A /* NotificationController.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = NotificationController.cpp; sourceTree = "<group>"; };
</span><span class="cx">                 3128CA6A147331630074C72A /* NotificationController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = NotificationController.h; sourceTree = "<group>"; };
</span><del>-                312D67B01535691F00563D0D /* Dictionary.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = Dictionary.cpp; sourceTree = "<group>"; };
</del><span class="cx">                 31313F631443B35E006E2A90 /* FilterEffectRenderer.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = FilterEffectRenderer.cpp; sourceTree = "<group>"; };
</span><span class="cx">                 31313F641443B35E006E2A90 /* FilterEffectRenderer.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = FilterEffectRenderer.h; sourceTree = "<group>"; };
</span><span class="cx">                 31403797124BEA7F00AF40E4 /* WebCoreMotionManager.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WebCoreMotionManager.h; sourceTree = "<group>"; };
</span><span class="lines">@@ -8486,7 +8483,6 @@
</span><span class="cx">                 314BE3A21B30F6D100141982 /* CSSNamedImageValue.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CSSNamedImageValue.cpp; sourceTree = "<group>"; };
</span><span class="cx">                 314BE3A41B3103FB00141982 /* NamedImageGeneratedImage.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = NamedImageGeneratedImage.cpp; sourceTree = "<group>"; };
</span><span class="cx">                 314BE3A51B3103FB00141982 /* NamedImageGeneratedImage.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = NamedImageGeneratedImage.h; sourceTree = "<group>"; };
</span><del>-                316023EF1532C40C00D50FF4 /* Dictionary.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Dictionary.h; sourceTree = "<group>"; };
</del><span class="cx">                 316FE06D0E6CCBEE00BF6088 /* JSCSSKeyframeRule.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = JSCSSKeyframeRule.cpp; sourceTree = "<group>"; };
</span><span class="cx">                 316FE06E0E6CCBEE00BF6088 /* JSCSSKeyframeRule.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = JSCSSKeyframeRule.h; sourceTree = "<group>"; };
</span><span class="cx">                 316FE06F0E6CCBEE00BF6088 /* JSCSSKeyframesRule.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = JSCSSKeyframesRule.cpp; sourceTree = "<group>"; };
</span><span class="lines">@@ -21949,8 +21945,6 @@
</span><span class="cx">                                 93F8B3060A300FEA00F61AB8 /* CodeGeneratorJS.pm */,
</span><span class="cx">                                 0F60F3291DFBB10400416D6C /* CommonVM.cpp */,
</span><span class="cx">                                 0F60F32A1DFBB10400416D6C /* CommonVM.h */,
</span><del>-                                312D67B01535691F00563D0D /* Dictionary.cpp */,
-                                316023EF1532C40C00D50FF4 /* Dictionary.h */,
</del><span class="cx">                                 B56576E717DA94E200A56BDC /* DOMConstructorWithDocument.h */,
</span><span class="cx">                                 BC53DA471143134D000D817E /* DOMWrapperWorld.cpp */,
</span><span class="cx">                                 BC53DA2D1143121E000D817E /* DOMWrapperWorld.h */,
</span><span class="lines">@@ -25387,7 +25381,6 @@
</span><span class="cx">                                 CECADFC7153778FF00E37068 /* DictationAlternative.h in Headers */,
</span><span class="cx">                                 CECADFC9153778FF00E37068 /* DictationCommand.h in Headers */,
</span><span class="cx">                                 D0BD4F5D1408850F006839B6 /* DictationCommandIOS.h in Headers */,
</span><del>-                                316023F01532C40C00D50FF4 /* Dictionary.h in Headers */,
</del><span class="cx">                                 937FF3D51A1012D6008EBA31 /* DictionaryLookup.h in Headers */,
</span><span class="cx">                                 2D5646B01B8F8493003C4994 /* DictionaryPopupInfo.h in Headers */,
</span><span class="cx">                                 FDAF19991513D131008DB0C3 /* DirectConvolver.h in Headers */,
</span><span class="lines">@@ -29174,7 +29167,6 @@
</span><span class="cx">                                 CECADFC6153778FF00E37068 /* DictationAlternative.cpp in Sources */,
</span><span class="cx">                                 CECADFC8153778FF00E37068 /* DictationCommand.cpp in Sources */,
</span><span class="cx">                                 D0BD4F5C1408850F006839B6 /* DictationCommandIOS.cpp in Sources */,
</span><del>-                                312D67B11535691F00563D0D /* Dictionary.cpp in Sources */,
</del><span class="cx">                                 937FF3D71A10131B008EBA31 /* DictionaryLookup.mm in Sources */,
</span><span class="cx">                                 FDAF19981513D131008DB0C3 /* DirectConvolver.cpp in Sources */,
</span><span class="cx">                                 7E4DE10D198B10B60051CB02 /* DiskCacheMonitorCocoa.mm in Sources */,
</span></span></pre></div>
<a id="trunkSourceWebCorebindingsjsDictionarycpp"></a>
<div class="delfile"><h4>Deleted: trunk/Source/WebCore/bindings/js/Dictionary.cpp (209961 => 209962)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/bindings/js/Dictionary.cpp        2016-12-17 10:33:12 UTC (rev 209961)
+++ trunk/Source/WebCore/bindings/js/Dictionary.cpp        2016-12-17 16:42:03 UTC (rev 209962)
</span><span class="lines">@@ -1,127 +0,0 @@
</span><del>-/*
- * Copyright (C) 2012 Apple Inc. All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- *
- * THIS SOFTWARE IS PROVIDED BY APPLE INC. ``AS IS'' AND ANY
- * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
- * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR
- * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
- * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
- * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
- * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
- * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- */
-
-#include "config.h"
-#include "Dictionary.h"
-
-#include "JSDOMConvert.h"
-
-using namespace JSC;
-
-namespace WebCore {
-
-Dictionary::Dictionary()
-{
-}
-
-Dictionary::Dictionary(ExecState* state, JSObject* initializerObject)
- : m_state(state)
-{
- if (state && initializerObject)
- m_initializerObject = Strong<JSObject>(state->vm(), initializerObject);
-}
-
-Dictionary::Dictionary(ExecState* state, JSValue value)
- : Dictionary(state, value.isObject() ? value.getObject() : nullptr)
-{
-}
-
-Dictionary::GetPropertyResult Dictionary::tryGetProperty(const char* propertyName, JSValue& finalResult) const
-{
- ASSERT(isValid());
-
- auto scope = DECLARE_THROW_SCOPE(m_state->vm());
- auto identifier = Identifier::fromString(m_state, propertyName);
- bool propertyFound = m_initializerObject.get()->getPropertySlot(m_state, identifier, [&] (bool propertyFound, PropertySlot& slot) -> bool {
- if (!propertyFound)
- return false;
- finalResult = slot.getValue(m_state, identifier);
- return true;
- });
- RETURN_IF_EXCEPTION(scope, ExceptionThrown);
- return propertyFound ? PropertyFound : NoPropertyFound;
-}
-
-bool Dictionary::getOwnPropertyNames(Vector<String>& names) const
-{
- if (!isValid())
- return false;
-
- PropertyNameArray propertyNames(m_state, PropertyNameMode::Strings);
- JSObject::getOwnPropertyNames(m_initializerObject.get(), m_state, propertyNames, EnumerationMode());
- for (auto& identifier : propertyNames) {
- auto stringKey = identifier.string();
- if (!stringKey.isEmpty())
- names.append(stringKey);
- }
-
- return true;
-}
-
-// MARK: - Value conversions
-
-void Dictionary::convertValue(ExecState& state, JSValue value, bool& result)
-{
- result = convert<IDLBoolean>(state, value);
-}
-
-void Dictionary::convertValue(ExecState& state, JSValue value, int& result)
-{
- result = convert<IDLLong>(state, value);
-}
-
-void Dictionary::convertValue(ExecState& state, JSValue value, unsigned& result)
-{
- result = convert<IDLUnsignedLong>(state, value);
-}
-
-void Dictionary::convertValue(ExecState& state, JSValue value, unsigned short& result)
-{
- result = convert<IDLUnsignedShort>(state, value);
-}
-
-void Dictionary::convertValue(ExecState& state, JSValue value, double& result)
-{
- result = convert<IDLDouble>(state, value);
-}
-
-void Dictionary::convertValue(ExecState& state, JSValue value, String& result)
-{
- result = convert<IDLDOMString>(state, value);
-}
-
-void Dictionary::convertValue(ExecState& state, JSValue value, Vector<String>& result)
-{
- if (value.isUndefinedOrNull())
- return;
- result = convert<IDLSequence<IDLDOMString>>(state, value);
-}
-
-void Dictionary::convertValue(ExecState& state, JSValue value, Dictionary& result)
-{
- result = Dictionary(&state, value);
-}
-
-}
</del></span></pre></div>
<a id="trunkSourceWebCorebindingsjsDictionaryh"></a>
<div class="delfile"><h4>Deleted: trunk/Source/WebCore/bindings/js/Dictionary.h (209961 => 209962)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/bindings/js/Dictionary.h        2016-12-17 10:33:12 UTC (rev 209961)
+++ trunk/Source/WebCore/bindings/js/Dictionary.h        2016-12-17 16:42:03 UTC (rev 209962)
</span><span class="lines">@@ -1,153 +0,0 @@
</span><del>-/*
- * Copyright (C) 2010 Google Inc. All rights reserved.
- * Copyright (C) 2012 Apple Inc. All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- *
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- *
- * THIS SOFTWARE IS PROVIDED BY APPLE AND ITS CONTRIBUTORS "AS IS" AND ANY
- * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
- * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
- * DISCLAIMED. IN NO EVENT SHALL APPLE OR ITS CONTRIBUTORS BE LIABLE FOR ANY
- * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
- * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
- * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
- * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
- * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- */
-
-#pragma once
-
-#include <heap/Strong.h>
-#include <heap/StrongInlines.h>
-#include <interpreter/CallFrame.h>
-#include <runtime/JSCInlines.h>
-#include <wtf/Forward.h>
-#include <wtf/Optional.h>
-#include <wtf/text/CString.h>
-#include <wtf/text/WTFString.h>
-
-namespace JSC {
-class JSObject;
-class JSValue;
-}
-
-namespace WebCore {
-
-class Dictionary {
-public:
- Dictionary();
- Dictionary(JSC::ExecState*, JSC::JSObject*);
- Dictionary(JSC::ExecState*, JSC::JSValue);
-
- // Returns true if a value was found for the provided property.
- template<typename Result> bool get(const char* propertyName, Result&) const;
- template<typename Result> bool get(const String& propertyName, Result&) const;
- template<typename Result> std::optional<Result> get(const char* propertyName) const;
-
- bool isObject() const { return isValid(); }
- bool isUndefinedOrNull() const { return !isValid(); }
-
- bool getOwnPropertyNames(Vector<String>&) const;
- bool getWithUndefinedOrNullCheck(const char* propertyName, String&) const;
-
- JSC::ExecState* execState() const { return m_state; }
- JSC::JSObject* initializerObject() const { return m_initializerObject.get(); }
-
-private:
- bool isValid() const { return m_state && m_initializerObject; }
-
- enum GetPropertyResult {
- ExceptionThrown,
- NoPropertyFound,
- PropertyFound
- };
-
- template <typename Result>
- GetPropertyResult tryGetPropertyAndResult(const char* propertyName, Result& context) const;
- GetPropertyResult tryGetProperty(const char* propertyName, JSC::JSValue&) const;
-
- static void convertValue(JSC::ExecState&, JSC::JSValue, bool& result);
- static void convertValue(JSC::ExecState&, JSC::JSValue, int& result);
- static void convertValue(JSC::ExecState&, JSC::JSValue, unsigned& result);
- static void convertValue(JSC::ExecState&, JSC::JSValue, unsigned short& result);
- static void convertValue(JSC::ExecState&, JSC::JSValue, double& result);
- static void convertValue(JSC::ExecState&, JSC::JSValue, String& result);
- static void convertValue(JSC::ExecState&, JSC::JSValue, Vector<String>& result);
- static void convertValue(JSC::ExecState&, JSC::JSValue, Dictionary& result);
-
- JSC::ExecState* m_state { nullptr };
- JSC::Strong<JSC::JSObject> m_initializerObject;
-};
-
-template<typename Result> bool Dictionary::get(const char* propertyName, Result& result) const
-{
- return isValid() && tryGetPropertyAndResult(propertyName, result) == PropertyFound;
-}
-
-template<typename Result> bool Dictionary::get(const String& propertyName, Result& result) const
-{
- return get(propertyName.utf8().data(), result);
-}
-
-template<typename Result> std::optional<Result> Dictionary::get(const char* propertyName) const
-{
- Result result;
- if (!get(propertyName, result))
- return std::nullopt;
- return result;
-}
-
-template <>
-inline bool Dictionary::get(const char* propertyName, JSC::JSValue& finalResult) const
-{
- return tryGetProperty(propertyName, finalResult) == PropertyFound;
-}
-
-inline bool Dictionary::getWithUndefinedOrNullCheck(const char* propertyName, String& result) const
-{
- ASSERT(isValid());
-
- JSC::JSValue value;
- if (!get(propertyName, value) || value.isUndefinedOrNull())
- return false;
-
- result = value.toWTFString(m_state);
- return true;
-}
-
-template <typename Result>
-Dictionary::GetPropertyResult Dictionary::tryGetPropertyAndResult(const char* propertyName, Result& finalResult) const
-{
- auto scope = DECLARE_THROW_SCOPE(m_state->vm());
-
- JSC::JSValue value;
- GetPropertyResult getPropertyResult = tryGetProperty(propertyName, value);
- switch (getPropertyResult) {
- case ExceptionThrown:
- return getPropertyResult;
- case PropertyFound: {
- Result result;
- convertValue(*m_state, value, result);
-
- RETURN_IF_EXCEPTION(scope, ExceptionThrown);
-
- finalResult = result;
- break;
- }
- case NoPropertyFound:
- break;
- }
-
- return getPropertyResult;
-}
-
-}
</del></span></pre></div>
<a id="trunkSourceWebCorebindingsjsJSBindingsAllInOnecpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/bindings/js/JSBindingsAllInOne.cpp (209961 => 209962)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/bindings/js/JSBindingsAllInOne.cpp        2016-12-17 10:33:12 UTC (rev 209961)
+++ trunk/Source/WebCore/bindings/js/JSBindingsAllInOne.cpp        2016-12-17 16:42:03 UTC (rev 209962)
</span><span class="lines">@@ -29,7 +29,6 @@
</span><span class="cx"> #include "CachedModuleScriptLoader.cpp"
</span><span class="cx"> #include "CallbackFunction.cpp"
</span><span class="cx"> #include "DOMWrapperWorld.cpp"
</span><del>-#include "Dictionary.cpp"
</del><span class="cx"> #include "GCController.cpp"
</span><span class="cx"> #include "JSAnimationTimelineCustom.cpp"
</span><span class="cx"> #include "JSAttrCustom.cpp"
</span></span></pre>
</div>
</div>
</body>
</html>