| OLD | NEW |
| 1 # Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 # Copyright (c) 2012 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 from code import Code | 5 from code import Code |
| 6 from model import PropertyType | 6 from model import PropertyType |
| 7 import cpp_util | 7 import cpp_util |
| 8 from json_parse import OrderedDict | 8 from json_parse import OrderedDict |
| 9 import schema_util | 9 import schema_util |
| 10 | 10 |
| (...skipping 47 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 58 been set. | 58 been set. |
| 59 """ | 59 """ |
| 60 return '%s_NONE' % self.FollowRef(type_).unix_name.upper() | 60 return '%s_NONE' % self.FollowRef(type_).unix_name.upper() |
| 61 | 61 |
| 62 def GetEnumValue(self, type_, enum_value): | 62 def GetEnumValue(self, type_, enum_value): |
| 63 """Gets the enum value of the given model.Property of the given type. | 63 """Gets the enum value of the given model.Property of the given type. |
| 64 | 64 |
| 65 e.g VAR_STRING | 65 e.g VAR_STRING |
| 66 """ | 66 """ |
| 67 value = '%s_%s' % (self.FollowRef(type_).unix_name.upper(), | 67 value = '%s_%s' % (self.FollowRef(type_).unix_name.upper(), |
| 68 cpp_util.Classname(enum_value.upper())) | 68 cpp_util.Classname(enum_value.name.upper())) |
| 69 # To avoid collisions with built-in OS_* preprocessor definitions, we add a | 69 # To avoid collisions with built-in OS_* preprocessor definitions, we add a |
| 70 # trailing slash to enum names that start with OS_. | 70 # trailing slash to enum names that start with OS_. |
| 71 if value.startswith("OS_"): | 71 if value.startswith("OS_"): |
| 72 value += "_" | 72 value += "_" |
| 73 return value | 73 return value |
| 74 | 74 |
| 75 def GetCppType(self, type_, is_ptr=False, is_in_container=False): | 75 def GetCppType(self, type_, is_ptr=False, is_in_container=False): |
| 76 """Translates a model.Property or model.Type into its C++ type. | 76 """Translates a model.Property or model.Type into its C++ type. |
| 77 | 77 |
| 78 If REF types from different namespaces are referenced, will resolve | 78 If REF types from different namespaces are referenced, will resolve |
| (...skipping 188 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 267 child_code = self.GeneratePropertyValues(child_property, | 267 child_code = self.GeneratePropertyValues(child_property, |
| 268 line, | 268 line, |
| 269 nodoc=nodoc) | 269 nodoc=nodoc) |
| 270 if child_code: | 270 if child_code: |
| 271 has_child_code = True | 271 has_child_code = True |
| 272 c.Concat(child_code) | 272 c.Concat(child_code) |
| 273 c.Eblock('} // namespace %s' % property.name) | 273 c.Eblock('} // namespace %s' % property.name) |
| 274 if not has_child_code: | 274 if not has_child_code: |
| 275 c = None | 275 c = None |
| 276 return c | 276 return c |
| OLD | NEW |