Function
A function type denotes the set of all functions with the same parameter and result types. The value of an uninitialized variable of type function is nil.
The final input parameter in a function signature can have a type prefixed with .... A function with such a parameter is called a variadic and can be called with zero or more arguments for that parameter.
func()
func(x int) int
func(a, _ int, z float32) bool
func(prefix string, values ...int)
func(a, b int, z float64, opt ...interface{}) (success bool)
func(int, int, float64) (float64, *[]int)