// Copyright 2022 The Go Authors. All rights reserved. // Use of this source code is governed by a BSD-style // license that can be found in the LICENSE file. package flag_test import ( "flag" "fmt" "net" "os" ) func ExampleTextVar() { fs := flag.NewFlagSet("ExampleTextVar", flag.ContinueOnError) fs.SetOutput(os.Stdout) var ip net.IP fs.TextVar(&ip, "ip", net.IPv4(192, 168, 0, 100), "`IP address` to parse") fs.Parse([]string{"-ip", "127.0.0.1"}) fmt.Printf("{ip: %v}\n\n", ip) // 256 is not a valid IPv4 component ip = nil fs.Parse([]string{"-ip", "256.0.0.1"}) fmt.Printf("{ip: %v}\n\n", ip) // Output: // {ip: 127.0.0.1} // // invalid value "256.0.0.1" for flag -ip: invalid IP address: 256.0.0.1 // Usage of ExampleTextVar: // -ip IP address // IP address to parse (default 192.168.0.100) // {ip: } }