Given this code:
package main import ( \"fmt\" ) type datstr string type Guy interface { SomeDumbGuy() string } func (d *datstr) SomeDumbGuy() string
Uber's Dig is pretty awesome. Here's a great blog post about it: Dependency Injection in Go