Upstream version 10.39.225.0
[platform/framework/web/crosswalk.git] / src / third_party / WebKit / Source / build / scripts / make_css_property_metadata.py
1 #!/usr/bin/env python
2 # Copyright 2014 The Chromium Authors. All rights reserved.
3 # Use of this source code is governed by a BSD-style license that can be
4 # found in the LICENSE file.
5
6 import sys
7
8 import css_properties
9 import in_generator
10 from name_utilities import lower_first
11 import template_expander
12
13
14 class CSSPropertyMetadataWriter(css_properties.CSSProperties):
15     filters = {
16         'lower_first': lower_first,
17     }
18
19     def __init__(self, in_file_path):
20         super(CSSPropertyMetadataWriter, self).__init__(in_file_path)
21         self._outputs = {'CSSPropertyMetadata.cpp': self.generate_css_property_metadata_cpp}
22
23     @template_expander.use_jinja('CSSPropertyMetadata.cpp.tmpl', filters=filters)
24     def generate_css_property_metadata_cpp(self):
25         return {
26             'properties': self._properties,
27             'switches': [('animatable', 'isAnimatableProperty'),
28                          ('inherited', 'isInheritedProperty'),
29                         ],
30             'first_enum_value': self._first_enum_value,
31         }
32
33
34 if __name__ == '__main__':
35     in_generator.Maker(CSSPropertyMetadataWriter).main(sys.argv)