def _generate_struct_class_h(self, struct):
self._generate_init_imports_h(struct)<EOL>self._generate_imports_h(self._get_imports_h(struct))<EOL>self.emit()<EOL>self.emit('<STR_LIT>')<EOL>self.emit()<EOL>self.emit('<STR_LIT>')<EOL>self.emit()<EOL>self._generate_class_comment(struct)<EOL>struct_name = fmt_class_prefix(struct)<EOL>with self.block_h_from_data_type(struct, protocol=['<STR_LIT>', '<STR_LIT>']):<EOL><INDENT>self.emit('<STR_LIT>')<EOL>self.emit()<EOL>self._generate_struct_properties(struct.fields)<EOL>self.emit('<STR_LIT>')<EOL>self.emit()<EOL>self._generate_struct_cstor_signature(struct)<EOL>self._generate_struct_cstor_signature_default(struct)<EOL>self._generate_init_unavailable_signature(struct)<EOL><DEDENT>self.emit()<EOL>self.emit()<EOL>self.emit('<STR_LIT>')<EOL>self.emit()<EOL>self.emit(comment_prefix)<EOL>self.emit_wrapped_text(<EOL>'<STR_LIT>'.format(<EOL>fmt_class(struct.name)),<EOL>prefix=comment_prefix)<EOL>self.emit(comment_prefix)<EOL>with self.block_h(fmt_serial_class(struct_name)):<EOL><INDENT>self._generate_serializer_signatures(struct_name)<EOL><DEDENT>self.emit()<EOL>self.emit('<STR_LIT>')<EOL>self.emit()<EOL>
Defines an Obj C header file that represents a struct in Stone.