Go language provides inbuilt support implementation of run-time reflection and allowing a program to manipulate objects with arbitrary types with the help of reflect package. The reflect.IsValid() Function in Golang is used to check whether v represents a value. To access this function, one needs to imports the reflect package in the program.
Syntax:
func (v Value) IsValid() boolParameters: This function does not accept any parameter.
Return Value: This function returns whether v represents a value or not.
Below examples illustrate the use of the above method in Golang:
Example 1:
// Golang program to illustrate // reflect.IsValid() Function package main import ( "fmt"
"reflect"
) // Main function func main() { // Use of IsValid() method
fmt.Println(reflect.Value{}.IsValid())
fmt.Println(reflect.ValueOf(nil).IsValid())
} |
Output:
false false
Example 2:
// Golang program to illustrate // reflect.IsValid() Function package main import ( "fmt"
"reflect"
) // Main function func main() { var i * int
v := reflect.ValueOf(i)
v2 := v.Elem()
// Use of IsValid() method
fmt.Println(v2.IsValid())
fmt.Println(reflect.ValueOf(nil).IsValid())
fmt.Println(reflect.Indirect(v).IsValid())
} |
Output:
false false false