What do you expect as output of following code?
package main
import "fmt"
type MyInterface interface {
GetName() string
}
type MyInterfaceImpl struct {
Name string
}
func (i *MyInterfaceImpl) GetName() string {
return i.Name
}
func getNilMyInterface() MyInterface {
return nil
}
func getNilMyInterfaceImpl() *MyInterfaceImpl {
return nil
}
func main() {
v := getNilMyInterface()
if v == nil {
if v = getNilMyInterfaceImpl(); v == nil {
fmt.Println("Ok. This code is correct!")
} else {
fmt.Println("Opsss... It's not nil")
fmt.Println(v.GetName())
}
}
}
Check yourself https://play.golang.org/p/PDbyjP7QcS
--
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 [email protected].
For more options, visit https://groups.google.com/d/optout.