Upstream version 9.38.198.0
[platform/framework/web/crosswalk.git] / src / third_party / WebKit / Source / build / scripts / make_css_value_keywords.py
index 49771f5..aaa9c00 100755 (executable)
@@ -16,10 +16,10 @@ HEADER_TEMPLATE = """
 #ifndef %(class_name)s_h
 #define %(class_name)s_h
 
-#include "core/css/CSSParserMode.h"
+#include "core/css/parser/CSSParserMode.h"
 #include <string.h>
 
-namespace WebCore {
+namespace blink {
 
 enum CSSValueID {
 %(value_keyword_enums)s
@@ -31,7 +31,7 @@ const size_t maxCSSValueKeywordLength = %(max_value_keyword_length)d;
 const char* getValueName(unsigned short id);
 bool isValueAllowedInMode(unsigned short id, CSSParserMode mode);
 
-} // namespace WebCore
+} // namespace blink
 
 #endif // %(class_name)s_h
 """
@@ -45,7 +45,7 @@ GPERF_TEMPLATE = """
 #include "core/css/HashTools.h"
 #include <string.h>
 
-namespace WebCore {
+namespace blink {
 static const char valueListStringPool[] = {
 "\\0"
 %(value_keyword_strings)s
@@ -86,13 +86,9 @@ const char* getValueName(unsigned short id)
 
 bool isValueAllowedInMode(unsigned short id, CSSParserMode mode)
 {
-    // FIXME: Investigate whether we can deprecate the former
-    // two as only QuirksOrUASheet is used in CSSValueKeyword.in
     switch (id) {
         %(ua_sheet_mode_values_keywords)s
             return isUASheetBehavior(mode);
-        %(quirks_mode_values_keywords)s
-            return isQuirksModeBehavior(mode);
         %(quirks_mode_or_ua_sheet_mode_values_keywords)s
             return isUASheetBehavior(mode) || isQuirksModeBehavior(mode);
         default:
@@ -100,7 +96,7 @@ bool isValueAllowedInMode(unsigned short id, CSSParserMode mode)
     }
 }
 
-} // namespace WebCore
+} // namespace blink
 """
 
 
@@ -164,11 +160,12 @@ class CSSValueKeywordsWriter(in_generator.Writer):
             'value_keyword_offsets': '\n'.join(map(lambda offset: '  %d,' % offset, keyword_offsets)),
             'value_keyword_to_enum_map': '\n'.join(map(lambda property: '%(name)s, %(enum_name)s' % property, self._value_keywords)),
             'ua_sheet_mode_values_keywords': '\n        '.join(map(self._case_value_keyword, self._value_keywords_with_mode('UASheet'))),
-            'quirks_mode_values_keywords': '\n        '.join(map(self._case_value_keyword, self._value_keywords_with_mode('Quirks'))),
             'quirks_mode_or_ua_sheet_mode_values_keywords': '\n    '.join(map(self._case_value_keyword, self._value_keywords_with_mode('QuirksOrUASheet'))),
         }
         # FIXME: If we could depend on Python 2.7, we would use subprocess.check_output
-        gperf_args = [self.gperf_path, '--key-positions=*', '-D', '-n', '-s', '2']
+        gperf_args = [self.gperf_path, '--key-positions=*', '-P', '-n']
+        gperf_args.extend(['-m', '50'])  # Pick best of 50 attempts.
+        gperf_args.append('-D')  # Allow duplicate hashes -> More compact code.
         gperf = subprocess.Popen(gperf_args, stdin=subprocess.PIPE, stdout=subprocess.PIPE, universal_newlines=True)
         return gperf.communicate(gperf_input)[0]