code: def class_types(self):
          
  
          if None is self.__class_types:
              self.__class_types = []
              for type_ in self.argument_types:
                  decl = None
                  type_ = type_traits.remove_reference(type_)
                  if type_traits_classes.is_class(type_):
                      decl = type_traits_classes.class_traits.get_declaration(
                          type_)
                  elif type_traits_classes.is_class_declaration(type_):
                      tt = type_traits_classes.class_declaration_traits
                      decl = tt.get_declaration(type_)
                  else:
                      pass
                  if decl:
                      self.__class_types.append(decl)
          return self.__class_types
docs: list of class/class declaration types, extracted from the
          operator arguments