| OLD | NEW |
| 1 # Copyright 2013 The Chromium Authors. All rights reserved. | 1 # Copyright 2013 The Chromium Authors. All rights reserved. |
| 2 # Use of this source code is governed by a BSD-style license that can be | 2 # Use of this source code is governed by a BSD-style license that can be |
| 3 # found in the LICENSE file. | 3 # found in the LICENSE file. |
| 4 | 4 |
| 5 """Generates C++ source files from a mojom.Module.""" | 5 """Generates C++ source files from a mojom.Module.""" |
| 6 | 6 |
| 7 import mojom | 7 import mojom |
| 8 import mojom_pack | 8 import mojom_pack |
| 9 import mojom_generator | 9 import mojom_generator |
| 10 | 10 |
| (...skipping 89 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 100 cpp_filters = { | 100 cpp_filters = { |
| 101 "camel_to_underscores": mojom_generator.CamelToUnderscores, | 101 "camel_to_underscores": mojom_generator.CamelToUnderscores, |
| 102 "cpp_const_wrapper_type": GetCppConstWrapperType, | 102 "cpp_const_wrapper_type": GetCppConstWrapperType, |
| 103 "cpp_field_type": GetCppFieldType, | 103 "cpp_field_type": GetCppFieldType, |
| 104 "cpp_type": GetCppType, | 104 "cpp_type": GetCppType, |
| 105 "cpp_wrapper_type": GetCppWrapperType, | 105 "cpp_wrapper_type": GetCppWrapperType, |
| 106 "get_pad": mojom_pack.GetPad, | 106 "get_pad": mojom_pack.GetPad, |
| 107 "is_handle_kind": mojom_generator.IsHandleKind, | 107 "is_handle_kind": mojom_generator.IsHandleKind, |
| 108 "is_object_kind": mojom_generator.IsObjectKind, | 108 "is_object_kind": mojom_generator.IsObjectKind, |
| 109 "is_string_kind": mojom_generator.IsStringKind, | 109 "is_string_kind": mojom_generator.IsStringKind, |
| 110 "is_array_kind": lambda kind: isinstance(kind, mojom.Array), |
| 110 "is_struct_with_handles": IsStructWithHandles, | 111 "is_struct_with_handles": IsStructWithHandles, |
| 111 "struct_size": lambda ps: ps.GetTotalSize() + _HEADER_SIZE, | 112 "struct_size": lambda ps: ps.GetTotalSize() + _HEADER_SIZE, |
| 112 "struct_from_method": mojom_generator.GetStructFromMethod, | 113 "struct_from_method": mojom_generator.GetStructFromMethod, |
| 113 "stylize_method": mojom_generator.StudlyCapsToCamel, | 114 "stylize_method": mojom_generator.StudlyCapsToCamel, |
| 114 } | 115 } |
| 115 | 116 |
| 116 @UseJinja("cpp_templates/module.h.tmpl", filters=cpp_filters) | 117 @UseJinja("cpp_templates/module.h.tmpl", filters=cpp_filters) |
| 117 def GenerateModuleHeader(self): | 118 def GenerateModuleHeader(self): |
| 118 return { | 119 return { |
| 119 "module_name": self.module.name, | 120 "module_name": self.module.name, |
| (...skipping 31 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 151 self.Write(self.GenerateModuleInternalHeader(), | 152 self.Write(self.GenerateModuleInternalHeader(), |
| 152 "%s_internal.h" % self.module.name) | 153 "%s_internal.h" % self.module.name) |
| 153 self.Write(self.GenerateModuleSource(), "%s.cc" % self.module.name) | 154 self.Write(self.GenerateModuleSource(), "%s.cc" % self.module.name) |
| 154 | 155 |
| 155 def GetIncludePrefix(self): | 156 def GetIncludePrefix(self): |
| 156 if not self.header_dir: | 157 if not self.header_dir: |
| 157 return "" | 158 return "" |
| 158 if self.header_dir[-1] == "/": | 159 if self.header_dir[-1] == "/": |
| 159 return self.header_dir | 160 return self.header_dir |
| 160 return self.header_dir + "/" | 161 return self.header_dir + "/" |
| OLD | NEW |