When a structure calls a method that requires `self` to be a pointer, the parameter is automatically and implicitly converted to a pointer. Are there any irreplaceable uses for this?

some related links: