def METHOD_NAME(self, src_feat, dst_feat, edge_feat):
    if "edge_feat" in edge_feat:
        edge_feat = self.edge_mlp(edge_feat["edge_feat"])
        alpha = src_feat["src"] + dst_feat["dst"] + edge_feat
    else:
        alpha = src_feat["src"] + dst_feat["dst"]
    alpha = self.leaky_relu(alpha)
    return {"alpha": alpha, "h": src_feat["h"]}