code: def _generate_struct_class_m(self, struct):
          
          self.emit()
          self._generate_imports_m(
              self._get_imports_m(
                  struct,
                  default_imports=['DBStoneSerializers', 'DBStoneValidators']))
  
          struct_name = fmt_class_prefix(struct)
  
          self.emit('#pragma mark - API Object')
          self.emit()
          with self.block_m(struct_name):
              self.emit('#pragma mark - Constructors')
              self.emit()
              self._generate_struct_cstor(struct)
              self._generate_struct_cstor_default(struct)
              self.emit('#pragma mark - Serialization methods')
              self.emit()
              self._generate_serializable_funcs(struct_name)
              self.emit('#pragma mark - Description method')
              self.emit()
              self._generate_description_func(struct_name)
              self.emit('#pragma mark - Copyable method')
              self.emit()
              self._generate_copyable_func()
              self.emit('#pragma mark - Hash method')
              self.emit()
              self._generate_hash_func(struct)
              self.emit('#pragma mark - Equality method')
              self.emit()
              self._generate_equality_func(struct)
  
          self.emit()
          self.emit()
  
          self.emit('#pragma mark - Serializer Object')
          self.emit()
          with self.block_m(fmt_serial_class(struct_name)):
              self._generate_struct_serializer(struct)
              self._generate_struct_deserializer(struct)
docs: Defines an Obj C implementation file that represents a struct in Stone.