| 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 import schema_util | 8 import schema_util |
| 9 import util_cc_helper | 9 import util_cc_helper |
| 10 from cpp_namespace_environment import CppNamespaceEnvironment | 10 from cpp_namespace_environment import CppNamespaceEnvironment |
| (...skipping 25 matching lines...) Expand all Loading... |
| 36 self._namespace.environment.namespace_pattern, | 36 self._namespace.environment.namespace_pattern, |
| 37 self._namespace.unix_name) | 37 self._namespace.unix_name) |
| 38 | 38 |
| 39 c = Code() | 39 c = Code() |
| 40 (c.Append(cpp_util.CHROMIUM_LICENSE) | 40 (c.Append(cpp_util.CHROMIUM_LICENSE) |
| 41 .Append() | 41 .Append() |
| 42 .Append(cpp_util.GENERATED_FILE_MESSAGE % self._namespace.source_file) | 42 .Append(cpp_util.GENERATED_FILE_MESSAGE % self._namespace.source_file) |
| 43 .Append() | 43 .Append() |
| 44 .Append(self._util_cc_helper.GetIncludePath()) | 44 .Append(self._util_cc_helper.GetIncludePath()) |
| 45 .Append('#include "base/logging.h"') | 45 .Append('#include "base/logging.h"') |
| 46 .Append('#include "base/stl_util.h"') | |
| 47 .Append('#include "base/strings/string_number_conversions.h"') | 46 .Append('#include "base/strings/string_number_conversions.h"') |
| 48 .Append('#include "base/strings/utf_string_conversions.h"') | 47 .Append('#include "base/strings/utf_string_conversions.h"') |
| 49 .Append('#include "%s/%s.h"' % | 48 .Append('#include "%s/%s.h"' % |
| 50 (self._namespace.source_file_dir, self._namespace.short_filename)) | 49 (self._namespace.source_file_dir, self._namespace.short_filename)) |
| 51 .Append('#include <set>') | 50 .Append('#include <set>') |
| 52 .Cblock(self._type_helper.GenerateIncludes(include_soft=True)) | 51 .Cblock(self._type_helper.GenerateIncludes(include_soft=True)) |
| 53 .Append() | 52 .Append() |
| 54 .Append('using base::UTF8ToUTF16;') | 53 .Append('using base::UTF8ToUTF16;') |
| 55 .Append() | 54 .Append() |
| 56 .Concat(cpp_util.OpenNamespace(cpp_namespace)) | 55 .Concat(cpp_util.OpenNamespace(cpp_namespace)) |
| (...skipping 493 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 550 vardot = '(%s).' % var | 549 vardot = '(%s).' % var |
| 551 return '%sDeepCopy()' % vardot | 550 return '%sDeepCopy()' % vardot |
| 552 elif underlying_type.property_type == PropertyType.ENUM: | 551 elif underlying_type.property_type == PropertyType.ENUM: |
| 553 maybe_namespace = '' | 552 maybe_namespace = '' |
| 554 if type_.property_type == PropertyType.REF: | 553 if type_.property_type == PropertyType.REF: |
| 555 maybe_namespace = '%s::' % underlying_type.namespace.unix_name | 554 maybe_namespace = '%s::' % underlying_type.namespace.unix_name |
| 556 return 'new base::StringValue(%sToString(%s))' % (maybe_namespace, var) | 555 return 'new base::StringValue(%sToString(%s))' % (maybe_namespace, var) |
| 557 elif underlying_type.property_type == PropertyType.BINARY: | 556 elif underlying_type.property_type == PropertyType.BINARY: |
| 558 if is_ptr: | 557 if is_ptr: |
| 559 vardot = var + '->' | 558 vardot = var + '->' |
| 560 ref = var + '.get()' | |
| 561 else: | 559 else: |
| 562 vardot = var + '.' | 560 vardot = var + '.' |
| 563 ref = '&' + var | 561 return ('base::BinaryValue::CreateWithCopiedBuffer(%sdata(),' |
| 564 return ('base::BinaryValue::CreateWithCopiedBuffer(vector_as_array(%s),' | 562 ' %ssize())' % (vardot, vardot)) |
| 565 ' %ssize())' % (ref, vardot)) | |
| 566 elif underlying_type.property_type == PropertyType.ARRAY: | 563 elif underlying_type.property_type == PropertyType.ARRAY: |
| 567 return '%s.release()' % self._util_cc_helper.CreateValueFromArray( | 564 return '%s.release()' % self._util_cc_helper.CreateValueFromArray( |
| 568 var, | 565 var, |
| 569 is_ptr) | 566 is_ptr) |
| 570 elif underlying_type.property_type.is_fundamental: | 567 elif underlying_type.property_type.is_fundamental: |
| 571 if is_ptr: | 568 if is_ptr: |
| 572 var = '*%s' % var | 569 var = '*%s' % var |
| 573 if underlying_type.property_type == PropertyType.STRING: | 570 if underlying_type.property_type == PropertyType.STRING: |
| 574 return 'new base::StringValue(%s)' % var | 571 return 'new base::StringValue(%s)' % var |
| 575 else: | 572 else: |
| (...skipping 497 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1073 if self._generate_error_messages: | 1070 if self._generate_error_messages: |
| 1074 params = list(params) + ['base::string16* error'] | 1071 params = list(params) + ['base::string16* error'] |
| 1075 return ', '.join(str(p) for p in params) | 1072 return ', '.join(str(p) for p in params) |
| 1076 | 1073 |
| 1077 def _GenerateArgs(self, args): | 1074 def _GenerateArgs(self, args): |
| 1078 """Builds the argument list for a function, given an array of arguments. | 1075 """Builds the argument list for a function, given an array of arguments. |
| 1079 """ | 1076 """ |
| 1080 if self._generate_error_messages: | 1077 if self._generate_error_messages: |
| 1081 args = list(args) + ['error'] | 1078 args = list(args) + ['error'] |
| 1082 return ', '.join(str(a) for a in args) | 1079 return ', '.join(str(a) for a in args) |
| OLD | NEW |