コード例 #1
0
 def wrap_name(self) -> str:
     if self.class_object.wrap_name_filled:
         base_name = self.class_object.wrap_name.format(
             class_name=self.class_object.name,
             wrap_suffix=self.lifecycle_traits.suffix)
         if self.is_template:
             self.__create_wrap_template_name(get_template_name(base_name))
             return self.cached_wrap_template_name
         else:
             return base_name
     if self.is_template:
         self.__create_wrap_template_name(
             get_template_name(self.name) + self.lifecycle_traits.suffix)
         return self.cached_wrap_template_name
     else:
         return self.name + self.lifecycle_traits.suffix
コード例 #2
0
 def __generate_snippet(self):
     if self.enum_generators or self.class_object.abstract:
         snippet_file_name = os.path.join(
             self.params.internal_snippets_folder,
             *get_template_name(self.implementation_name).split('::'))
         snippet_file_name += replace_template_to_filename(
             get_template_tail(self.implementation_name)) + '.h'
         snippet_file = FileGenerator(snippet_file_name)
         snippet_file.put_begin_cpp_comments(self.params)
         for enum_generator in self.enum_generators:
             enum_generator.generate_enum_definition(snippet_file)
         if self.class_object.abstract:
             snippet_file.put_line('')
             snippet_file.put_line('virtual ~{impl_name}() {{}}'.format(
                 impl_name=get_template_name(
                     self.implementation_name).split('::')[-1]))
             for method_generator in self.method_generators:
                 method_generator.generate_snippet(snippet_file)
コード例 #3
0
 def __create_wrap_template_name(self):
     if not self.cached_wrap_template_name:
         name_prefix = get_template_name(
             self.name) + self.lifecycle_traits.suffix
         template_arguments = [
             t_arg.wrap_return_type()
             for t_arg in self.template_argument_generators
         ]
         raw_name = '{name}<{template_arguments}>'.format(
             name=name_prefix,
             template_arguments=', '.join(template_arguments))
         self.cached_wrap_template_name = format_type(raw_name)
コード例 #4
0
 def wrap_short_name(self) -> str:
     return get_template_name(self.wrap_name)