code: func SingleIP() schema.SchemaValidateFunc {
  	return func(i interface{}, k string) (s []string, es []error) {
  		v, ok := i.(string)
  		if !ok {
  			es = append(es, fmt.Errorf("expected type of %s to be string", k))
  			return
  		}
  
  		ip := net.ParseIP(v)
  		if ip == nil {
  			es = append(es, fmt.Errorf(
  				"expected %s to contain a valid IP, got: %s", k, v))
  		}
  		return
  	}
  }
docs: // SingleIP returns a SchemaValidateFunc which tests if the provided value
  // is of type string, and in valid single IP notation