MCPcopy Create free account
hub / github.com/defold/defold / message_to_dict

Function message_to_dict

engine/docs/script_doc.py:566–584  ·  view source on GitHub ↗
(message)

Source from the content-addressed store, hash-verified

564 return doc
565
566def message_to_dict(message):
567 ret = {}
568 for field in message.DESCRIPTOR.fields:
569 value = getattr(message, field.name)
570 if field.label == FieldDescriptor.LABEL_REPEATED:
571 lst = []
572 for element in value:
573 if isinstance(element, Message):
574 lst.append(message_to_dict(element))
575 else:
576 lst.append(str(element))
577 ret[field.name] = lst
578 elif field.type == FieldDescriptor.TYPE_MESSAGE:
579 ret[field.name] = message_to_dict(value)
580 elif field.type == FieldDescriptor.TYPE_ENUM:
581 ret[field.name] = field.enum_type.values_by_number[value].name
582 else:
583 ret[field.name] = str(value)
584 return ret
585
586def message_to_json_dict(message):
587 d = message_to_dict(message)

Callers 2

message_to_json_dictFunction · 0.85
to_lua_annotationFunction · 0.85

Calls 1

appendMethod · 0.80

Tested by

no test coverage detected