I'm looking to the video tutorial of Go. I see there a type declaration and method that have to return a pointer of that type.
type testType struct {
value int
}
func (h *testType) testFunction(w http.ResponseWriter, r *http.Request) {
// we have empty body
}
As you see, function body is empty, there is no return statement.
That is not the return type of the function, it's a method and that is called the receiver type.
See Spec: Function declarations and Spec: Method declarations.
The return type is at the end of the function Signature, for example:
func testFunction(w http.ResponseWriter, r *http.Request) *testType {
return nil
}
This is a function, having a return type of *testType
.
This:
func (h *testType) testFunction(w http.ResponseWriter, r *http.Request) {
// we have empty body
}
Is a method with receiver type *testType
, and no return types.