36 lines
378 B
Go
36 lines
378 B
Go
![]() |
package main
|
||
|
|
||
|
import (
|
||
|
"fmt"
|
||
|
)
|
||
|
|
||
|
type Thing struct {
|
||
|
str string
|
||
|
}
|
||
|
|
||
|
func (d *Thing) Test() bool {
|
||
|
return d != nil
|
||
|
}
|
||
|
|
||
|
func callit(f func()) {
|
||
|
f()
|
||
|
}
|
||
|
|
||
|
func main() {
|
||
|
cases := []struct {
|
||
|
name string
|
||
|
thing Thing
|
||
|
}{
|
||
|
{
|
||
|
name: "Success",
|
||
|
thing: Thing{str: "hello"},
|
||
|
},
|
||
|
}
|
||
|
|
||
|
for _, c := range cases {
|
||
|
callit(func() {
|
||
|
fmt.Println("hello", c.thing.Test())
|
||
|
})
|
||
|
}
|
||
|
}
|