I think the rust one is much easier to read. The go one has an if statement, which means the go one has higher cyclomatic complexity, and is thus harder to understand and reason about.
The rust one does have "&**self", which looks a little strange perhaps, but overall seems simpler than the go one.
The rust one does have "&**self", which looks a little strange perhaps, but overall seems simpler than the go one.