예제 #1
0
    def _print_child_classes(self, parent):
        unsorted_classes = [nested_class for nested_class in parent.owned_elements if isinstance(nested_class, Class)]
        sorted_classes = sort_classes_at_same_level(unsorted_classes)

        for clazz in sorted_classes:
            cp = ClassPrinter(self.ctx, self.bundle_name, self.identity_subclasses)
            cp.print_output(clazz)
예제 #2
0
 def _print_meta_parents(self, clazz):
     nested_classes = sort_classes_at_same_level(
         [nested_class for nested_class in clazz.owned_elements if isinstance(nested_class, Class)])
     self.print_parents(nested_classes)
     for nested_class in nested_classes:
         self.ctx.writeln('_meta_table[\'%s\'][\'meta_info\'].parent =_meta_table[\'%s\'][\'meta_info\']' % (
             nested_class.qn(), clazz.qn()))
예제 #3
0
 def _print_meta_parents(self, clazz):
     nested_classes = sort_classes_at_same_level(
         [nested_class for nested_class in clazz.owned_elements if isinstance(nested_class, Class)])
     self.print_parents(nested_classes)
     for nested_class in nested_classes:
         self.ctx.writeln('_meta_table[\'%s\'][\'meta_info\'].parent =_meta_table[\'%s\'][\'meta_info\']' % (
             nested_class.qn(), clazz.qn()))
예제 #4
0
    def _print_child_classes(self, parent):
        unsorted_classes = [nested_class for nested_class in parent.owned_elements if isinstance(nested_class, Class)]
        sorted_classes = sort_classes_at_same_level(unsorted_classes)

        for clazz in sorted_classes:
            cp = ClassPrinter(self.ctx, self.bundle_name, self.identity_subclasses)
            cp.print_output(clazz)
예제 #5
0
    def print_parents(self, unsorted_classes):
        ''' This arranges the classes at the same level
            so that super references are printed before
            the subclassess'''
        sorted_classes = sort_classes_at_same_level(unsorted_classes)

        for clazz in sorted_classes:
            self._print_meta_parents(clazz)
예제 #6
0
    def print_body(self, unsorted_classes):
        ''' This arranges the classes at the same level
            so that super references are printed before
            the subclassess'''
        sorted_classes = sort_classes_at_same_level(unsorted_classes)

        for clazz in sorted_classes:
            self._print_class(clazz)
예제 #7
0
    def print_output(self, unsorted_classes):
        ''' This arranges the classes at the same level
            so that super references are printed before
            the subclassess'''
        sorted_classes = sort_classes_at_same_level(unsorted_classes, self.sort_clazz)

        for clazz in sorted_classes:
            self.print_class_meta(clazz)
예제 #8
0
 def _populate_class_list(self, element):
     clazzes = [n for n in element.owned_elements if isinstance(n, Class)]
     sorted_classes = sort_classes_at_same_level(clazzes, self.sort_clazz)
     for clazz in sorted_classes:
         if clazz.is_identity():
             self.is_all_identities = True
         else:
             self.is_all_identities = False
         self.class_list.append(clazz)
         self._populate_class_list(clazz)
예제 #9
0
 def _populate_class_list(self, element):
     clazzes = [n for n in element.owned_elements if isinstance(n, Class)]
     sorted_classes = sort_classes_at_same_level(clazzes)
     for clazz in sorted_classes:
         if clazz.is_identity():
             self.is_all_identities = True
         else:
             self.is_all_identities = False
         self.class_list.append(clazz)
         self._populate_class_list(clazz)
예제 #10
0
 def _print_classes(self, clazzes):
     sorted_classes = sort_classes_at_same_level(clazzes)
     for clazz in sorted_classes:
         self._print_class(clazz)
예제 #11
0
 def _print_classes(self, clazzes):
     sorted_classes = sort_classes_at_same_level(clazzes)
     for clazz in sorted_classes:
         self._print_class(clazz)