def PrintField(self, field, value):
out = self.out<EOL>out.write('<STR_LIT:U+0020>' * self.indent)<EOL>if self.use_field_number:<EOL><INDENT>out.write(str(field.number))<EOL><DEDENT>else:<EOL><INDENT>if field.is_extension:<EOL><INDENT>out.write('<STR_LIT:[>')<EOL>if (field.containing_type.GetOptions().message_set_wire_format and<EOL>field.type == descriptor.FieldDescriptor.TYPE_MESSAGE and<EOL>field.label == descriptor.FieldDescriptor.LABEL_OPTIONAL):<EOL><INDENT>out.write(field.message_type.full_name)<EOL><DEDENT>else:<EOL><INDENT>out.write(field.full_name)<EOL><DEDENT>out.write('<STR_LIT:]>')<EOL><DEDENT>elif field.type == descriptor.FieldDescriptor.TYPE_GROUP:<EOL><INDENT>out.write(field.message_type.name)<EOL><DEDENT>else:<EOL><INDENT>out.write(field.name)<EOL><DEDENT><DEDENT>if field.cpp_type != descriptor.FieldDescriptor.CPPTYPE_MESSAGE:<EOL><INDENT>out.write('<STR_LIT>')<EOL><DEDENT>self.PrintFieldValue(field, value)<EOL>if self.as_one_line:<EOL><INDENT>out.write('<STR_LIT:U+0020>')<EOL><DEDENT>else:<EOL><INDENT>out.write('<STR_LIT:\n>')<EOL><DEDENT>
Print a single field name/value pair.