[SCM] WebKit Debian packaging branch, debian/experimental, updated. upstream/1.3.3-9427-gc2be6fc

apavlov at chromium.org apavlov at chromium.org
Wed Dec 22 13:30:11 UTC 2010


The following commit has been merged in the debian/experimental branch:
commit 0ff1a2141d1bcf887cf698e84e4c87f9db2d7d9c
Author: apavlov at chromium.org <apavlov at chromium.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Date:   Fri Sep 17 15:00:19 2010 +0000

    2010-09-17  Alexander Pavlov  <apavlov at chromium.org>
    
            Unreviewed, build fix. Add files missed in the previous commit.
    
            * GNUmakefile.am:
            * css/CSSPropertySourceData.cpp: Added.
            (WebCore::SourceRange::SourceRange):
            (WebCore::SourceRange::operator=):
            (WebCore::CSSPropertySourceData::CSSPropertySourceData):
            (WebCore::CSSPropertySourceData::operator=):
            (WebCore::CSSPropertySourceData::toString):
            (WebCore::CSSPropertySourceData::hash):
            (WebCore::CSSPropertySourceData::init):
            * css/CSSPropertySourceData.h: Added.
            (WebCore::CSSPropertySourceData::~CSSPropertySourceData):
            (WebCore::CSSStyleSourceData::create):
    
    
    git-svn-id: http://svn.webkit.org/repository/webkit/trunk@67705 268f45cc-cd09-0410-ab3c-d52691b4dbfc

diff --git a/WebCore/ChangeLog b/WebCore/ChangeLog
index 22035e7..181ff2a 100644
--- a/WebCore/ChangeLog
+++ b/WebCore/ChangeLog
@@ -1,3 +1,20 @@
+2010-09-17  Alexander Pavlov  <apavlov at chromium.org>
+
+        Unreviewed, build fix. Add files missed in the previous commit.
+
+        * GNUmakefile.am:
+        * css/CSSPropertySourceData.cpp: Added.
+        (WebCore::SourceRange::SourceRange):
+        (WebCore::SourceRange::operator=):
+        (WebCore::CSSPropertySourceData::CSSPropertySourceData):
+        (WebCore::CSSPropertySourceData::operator=):
+        (WebCore::CSSPropertySourceData::toString):
+        (WebCore::CSSPropertySourceData::hash):
+        (WebCore::CSSPropertySourceData::init):
+        * css/CSSPropertySourceData.h: Added.
+        (WebCore::CSSPropertySourceData::~CSSPropertySourceData):
+        (WebCore::CSSStyleSourceData::create):
+
 2010-09-15  Alexander Pavlov  <apavlov at chromium.org>
 
         Reviewed by Pavel Feldman.
diff --git a/WebCore/GNUmakefile.am b/WebCore/GNUmakefile.am
index 9b78e29..33dee94 100644
--- a/WebCore/GNUmakefile.am
+++ b/WebCore/GNUmakefile.am
@@ -934,6 +934,8 @@ webcore_sources += \
 	WebCore/css/CSSProperty.h \
 	WebCore/css/CSSPropertyLonghand.cpp \
 	WebCore/css/CSSPropertyLonghand.h \
+	WebCore/css/CSSPropertySourceData.cpp \
+	WebCore/css/CSSPropertySourceData.h \
 	WebCore/css/CSSQuirkPrimitiveValue.h \
 	WebCore/css/CSSReflectionDirection.h \
 	WebCore/css/CSSReflectValue.cpp \
diff --git a/WebCore/css/CSSPropertySourceData.cpp b/WebCore/css/CSSPropertySourceData.cpp
new file mode 100644
index 0000000..1628031
--- /dev/null
+++ b/WebCore/css/CSSPropertySourceData.cpp
@@ -0,0 +1,135 @@
+/*
+ * Copyright (c) 2010 Google 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:
+ *
+ *     * Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ *     * 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.
+ *     * Neither the name of Google Inc. nor the names of its
+ * contributors may be used to endorse or promote products derived from
+ * this software without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND 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 THE COPYRIGHT
+ * OWNER 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"
+
+#ifdef SKIP_STATIC_CONSTRUCTORS_ON_GCC
+#define CSSPROPERTYSOURCEDATA_HIDE_GLOBALS 1
+#endif
+
+#include "CSSPropertySourceData.h"
+
+#include "PlatformString.h"
+#include <wtf/StaticConstructors.h>
+#include <wtf/text/StringHash.h>
+
+namespace WebCore {
+
+SourceRange::SourceRange()
+    : start(0)
+    , end(0)
+{
+}
+
+SourceRange::SourceRange(unsigned start, unsigned end)
+    : start(start)
+    , end(end)
+{
+}
+
+SourceRange& SourceRange::operator=(const SourceRange& other)
+{
+    this->start = other.start;
+    this->end = other.end;
+    return *this;
+}
+
+CSSPropertySourceData::CSSPropertySourceData(const String& name, const String& value, bool important, bool parsedOk, const SourceRange& range)
+    : name(name)
+    , value(value)
+    , important(important)
+    , parsedOk(parsedOk)
+    , range(range)
+{
+}
+
+CSSPropertySourceData::CSSPropertySourceData(const CSSPropertySourceData& other)
+    : name(other.name)
+    , value(other.value)
+    , important(other.important)
+    , parsedOk(other.parsedOk)
+    , range(other.range)
+{
+}
+
+CSSPropertySourceData::CSSPropertySourceData()
+    : name("")
+    , value("")
+    , important(false)
+    , parsedOk(false)
+    , range(SourceRange(0, 0))
+{
+}
+
+CSSPropertySourceData& CSSPropertySourceData::operator=(const CSSPropertySourceData& other)
+{
+    name = other.name;
+    value = other.value;
+    important = other.important;
+    parsedOk = other.parsedOk;
+    range = other.range;
+    return *this;
+}
+
+String CSSPropertySourceData::toString() const
+{
+    DEFINE_STATIC_LOCAL(String, emptyValue, ("e"));
+    DEFINE_STATIC_LOCAL(String, importantSuffix, (" !important"));
+    if (!name && value == emptyValue)
+        return String();
+
+    String result = name;
+    result += ": ";
+    result += value;
+    if (important)
+        result += importantSuffix;
+    result += ";";
+    return result;
+}
+
+unsigned CSSPropertySourceData::hash() const
+{
+    return StringHash::hash(name) + 3 * StringHash::hash(value) + 7 * important + 13 * parsedOk + 31;
+}
+
+// Global init routines
+DEFINE_GLOBAL(CSSPropertySourceData, emptyCSSPropertySourceData, "", "e", false, false)
+
+// static
+void CSSPropertySourceData::init()
+{
+    static bool initialized;
+    if (!initialized) {
+        new ((void *) &emptyCSSPropertySourceData) CSSPropertySourceData("", "e", false, false, SourceRange(0, 0));
+        initialized = true;
+    }
+}
+
+} // namespace WebCore
diff --git a/WebCore/css/CSSPropertySourceData.h b/WebCore/css/CSSPropertySourceData.h
new file mode 100644
index 0000000..beae9d0
--- /dev/null
+++ b/WebCore/css/CSSPropertySourceData.h
@@ -0,0 +1,90 @@
+/*
+ * Copyright (c) 2010 Google 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:
+ *
+ *     * Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ *     * 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.
+ *     * Neither the name of Google Inc. nor the names of its
+ * contributors may be used to endorse or promote products derived from
+ * this software without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND 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 THE COPYRIGHT
+ * OWNER 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.
+ */
+
+#ifndef CSSPropertySourceData_h
+#define CSSPropertySourceData_h
+
+#include "PlatformString.h"
+#include <utility>
+#include <wtf/Forward.h>
+#include <wtf/HashMap.h>
+#include <wtf/Vector.h>
+
+namespace WebCore {
+
+class CSSStyleRule;
+
+struct SourceRange {
+    SourceRange();
+    SourceRange(unsigned start, unsigned end);
+    SourceRange& operator=(const SourceRange& other);
+
+    unsigned start;
+    unsigned end;
+};
+
+struct CSSPropertySourceData {
+    static void init();
+
+    CSSPropertySourceData(const String& name, const String& value, bool important, bool parsedOk, const SourceRange& range);
+    CSSPropertySourceData(const CSSPropertySourceData& other);
+    CSSPropertySourceData();
+    ALWAYS_INLINE ~CSSPropertySourceData() { }
+
+    CSSPropertySourceData& operator=(const CSSPropertySourceData& other);
+    String toString() const;
+    unsigned hash() const;
+
+    String name;
+    String value;
+    bool important;
+    bool parsedOk;
+    SourceRange range;
+};
+
+#ifndef CSSPROPERTYSOURCEDATA_HIDE_GLOBALS
+extern const CSSPropertySourceData emptyCSSPropertySourceData;
+#endif
+
+struct CSSStyleSourceData : public RefCounted<CSSStyleSourceData> {
+    static PassRefPtr<CSSStyleSourceData> create()
+    {
+        return adoptRef(new CSSStyleSourceData());
+    }
+
+    // Range of the style text in the enclosing source.
+    SourceRange styleBodyRange;
+    Vector<CSSPropertySourceData> propertyData;
+};
+typedef HashMap<CSSStyleRule*, RefPtr<CSSStyleSourceData> > StyleRuleRangeMap;
+
+} // namespace WebCore
+
+#endif // CSSPropertySourceData_h

-- 
WebKit Debian packaging



More information about the Pkg-webkit-commits mailing list