def METHOD_NAME(self, m: AbstractNodeData) -> str:
    """
    Return a unique name for the ``m`` struct member.
    """
    struct = m.struct
    assert struct
    m = self.root_member(m)
    # Node members are already qualified by the node type name, so we need
    # to add the type name only for structs. Also, make sure we get the
    # original name for properties that have been turned into dispatchers.
    if isinstance(m, PropertyDef) and m.is_dispatcher:
        return str(m.name_before_dispatcher)
    elif struct.is_ast_node:
        return str(m.name)
    else:
        return f"{self.type_name(struct)}_{m.name}"