If I have:
type foo struct{ } func bar(baz interface{}) { }
The above are set in stone - I can\'t change foo or bar. Additionally,
use reflect
reflect.ValueOf(myStruct).Interface().(newType)