summaryrefslogtreecommitdiff
path: root/dom/base/gen-usecounters.py
diff options
context:
space:
mode:
Diffstat (limited to 'dom/base/gen-usecounters.py')
-rwxr-xr-xdom/base/gen-usecounters.py80
1 files changed, 0 insertions, 80 deletions
diff --git a/dom/base/gen-usecounters.py b/dom/base/gen-usecounters.py
deleted file mode 100755
index 5b17c22e44..0000000000
--- a/dom/base/gen-usecounters.py
+++ /dev/null
@@ -1,80 +0,0 @@
-#!/usr/bin/env python
-
-# This Source Code Form is subject to the terms of the Mozilla Public
-# License, v. 2.0. If a copy of the MPL was not distributed with this
-# file, You can obtain one at http://mozilla.org/MPL/2.0/.
-
-from __future__ import print_function
-
-import json
-import os
-import sys
-sys.path.append(os.path.dirname(__file__))
-
-import usecounters
-
-AUTOGENERATED_WARNING_COMMENT = "/* THIS FILE IS AUTOGENERATED BY gen-usecounters.py - DO NOT EDIT */"
-
-def generate_list(f, counters):
- def print_optional_macro_declare(name):
- print('''
-#ifndef %(name)s
-#define %(name)s(interface_, name_) // nothing
-#define DEFINED_%(name)s
-#endif
-''' % { 'name': name }, file=f)
-
- def print_optional_macro_undeclare(name):
- print('''
-#ifdef DEFINED_%(name)s
-#undef DEFINED_%(name)s
-#undef %(name)s
-#endif
-''' % { 'name': name }, file=f)
-
- print(AUTOGENERATED_WARNING_COMMENT, file=f)
-
- print_optional_macro_declare('USE_COUNTER_DOM_METHOD')
- print_optional_macro_declare('USE_COUNTER_DOM_ATTRIBUTE')
- print_optional_macro_declare('USE_COUNTER_CSS_PROPERTY')
-
- for counter in counters:
- if counter['type'] == 'method':
- print('USE_COUNTER_DOM_METHOD(%s, %s)' % (counter['interface_name'], counter['method_name']), file=f)
- elif counter['type'] == 'attribute':
- print('USE_COUNTER_DOM_ATTRIBUTE(%s, %s)' % (counter['interface_name'], counter['attribute_name']), file=f)
- elif counter['type'] == 'property':
- prop = counter['property_name']
- print('USE_COUNTER_CSS_PROPERTY(%s, %s)' % (prop, prop), file=f)
-
- print_optional_macro_undeclare('USE_COUNTER_DOM_METHOD')
- print_optional_macro_undeclare('USE_COUNTER_DOM_ATTRIBUTE')
- print_optional_macro_undeclare('USE_COUNTER_CSS_PROPERTY')
-
-def generate_property_map(f, counters):
- print(AUTOGENERATED_WARNING_COMMENT, file=f)
- print('''
-enum {
- #define CSS_PROP_PUBLIC_OR_PRIVATE(publicname_, privatename_) privatename_
- #define CSS_PROP_LIST_INCLUDE_LOGICAL
- #define CSS_PROP(name_, id_, method_, flags_, pref_, parsevariant_, \\
- kwtable_, stylestruct_, stylestructoffset_, animtype_) \\
- USE_COUNTER_FOR_CSS_PROPERTY_##method_ = eUseCounter_UNKNOWN,
- #include "nsCSSPropList.h"
- #undef CSS_PROP
- #undef CSS_PROP_LIST_INCLUDE_LOGICAL
- #undef CSS_PROP_PUBLIC_OR_PRIVATE
-};
-''', file=f)
- for counter in counters:
- if counter['type'] == 'property':
- prop = counter['property_name']
- print('#define USE_COUNTER_FOR_CSS_PROPERTY_%s eUseCounter_property_%s' % (prop, prop), file=f)
-
-def use_counter_list(output_header, conf_filename):
- counters = usecounters.read_conf(conf_filename)
- generate_list(output_header, counters)
-
-def property_map(output_map, conf_filename):
- counters = usecounters.read_conf(conf_filename)
- generate_property_map(output_map, counters)