func validateHttpReturns()

in fc/http_handler.go [54:67]


func validateHttpReturns(handler reflect.Type) error {
	errorType := reflect.TypeOf((*error)(nil)).Elem()

	switch n := handler.NumOut(); {
	case n > 1:
		return fmt.Errorf("handler may not return more than one values")
	case n == 1:
		if !handler.Out(0).Implements(errorType) {
			return fmt.Errorf("handler returns a single value, but it does not implement error")
		}
	}

	return nil
}