A lot of the protocol dunder methods work like this. Honestly I'm not a fan of the pattern and it feels hacky and type-unsafe to me, but when in Rome. (I'd love to work on pushing things more toward a structured, typesafe design, but given how things are now, it's almost an entirely new product at that point).