Collect includes for a message and its nested types recursively.
(self, message: Message, includes: Set[str])
| 361 | ) |
| 362 | |
| 363 | def collect_message_includes(self, message: Message, includes: Set[str]): |
| 364 | """Collect includes for a message and its nested types recursively.""" |
| 365 | for field in message.fields: |
| 366 | weak_ref = self.get_field_weak_ref(field) |
| 367 | element_weak_ref = self.get_element_weak_ref(field) |
| 368 | if isinstance(field.field_type, MapType): |
| 369 | weak_ref = self.get_map_value_weak_ref(field) |
| 370 | self.collect_includes( |
| 371 | field.field_type, |
| 372 | field.optional, |
| 373 | field.ref, |
| 374 | includes, |
| 375 | field.element_optional, |
| 376 | field.element_ref, |
| 377 | weak_ref, |
| 378 | element_weak_ref, |
| 379 | ) |
| 380 | for nested_msg in message.nested_messages: |
| 381 | self.collect_message_includes(nested_msg, includes) |
| 382 | for nested_union in message.nested_unions: |
| 383 | self.collect_union_includes(nested_union, includes) |
| 384 | |
| 385 | def collect_union_includes(self, union: Union, includes: Set[str]): |
| 386 | """Collect includes for a union and its cases.""" |
no test coverage detected