> On Feb 9, 2024, at 3:37 PM, Christopher C <crotty.christop...@gmail.com> > wrote: > > I have a base struct that implements an interface. There are multiple other > structs that embed this base struct. I would like to pass the an interface > into a function that can cast it as the base struct and call some functions > tied to the base struct. > > Something like this... > https://go.dev/play/p/DUzXr31s8Pn
You can't cast like in your example, but you can create an interface — call is `Baser` using idiomatic interface naming to identify the `Base` type which will have an empty `Base()` method — and then type assert to it after which, if it succeeds you can type assert to `*Base`, like so: https://go.dev/play/p/-gcKGf4_AFg <https://go.dev/play/p/-gcKGf4_AFg> Hope this helps. -Mike -- You received this message because you are subscribed to the Google Groups "golang-nuts" group. To unsubscribe from this group and stop receiving emails from it, send an email to golang-nuts+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/golang-nuts/1149B1AB-059E-42B4-A593-549D4793F7B5%40newclarity.net.