...

Source file src/math/cmplx/isnan.go

Documentation: math/cmplx

		 1  // Copyright 2010 The Go Authors. All rights reserved.
		 2  // Use of this source code is governed by a BSD-style
		 3  // license that can be found in the LICENSE file.
		 4  
		 5  package cmplx
		 6  
		 7  import "math"
		 8  
		 9  // IsNaN reports whether either real(x) or imag(x) is NaN
		10  // and neither is an infinity.
		11  func IsNaN(x complex128) bool {
		12  	switch {
		13  	case math.IsInf(real(x), 0) || math.IsInf(imag(x), 0):
		14  		return false
		15  	case math.IsNaN(real(x)) || math.IsNaN(imag(x)):
		16  		return true
		17  	}
		18  	return false
		19  }
		20  
		21  // NaN returns a complex ``not-a-number'' value.
		22  func NaN() complex128 {
		23  	nan := math.NaN()
		24  	return complex(nan, nan)
		25  }
		26  

View as plain text