even Go has a suitable answer.
Why I’m dropping Rust
Michael de Lang

Actually, Go’s solution is the same solution you’d use in Rust, namely interface / trait methods. A composite method in Go also does not allow access to the base struct, and there is no virtual dispatch, so you would have to expose any struct fields as getters via some composed interface. This is likely what you should be doing in Rust, too.

One clap, two clap, three clap, forty?

By clapping more or less, you can signal to us which stories really stand out.