PI
Pi circle constant
pub const PI: f64Module: std.math
Source: std/math.zn
PI
Pi circle constant
pub const PI: f64TAU
Full circle constant (2 * PI)
pub const TAU: f64E
Euler number
pub const E: f64min
Smaller of two values
pub fn min[T: Ord](a: T, b: T) Tmax
Greater of two values
pub fn max[T: Ord](a: T, b: T) Tclamp
Clamp value into [lo, hi]
pub fn clamp[T: Ord](value: T, lo: T, hi: T) Tlerp
Linear interpolation between a and b
pub fn lerp(a: f64, b: f64, t: f64) f64lerpf
Linear interpolation between a and b (single precision)
pub fn lerpf(a: f32, b: f32, t: f32) f32gcd
Greatest common divisor (always non-negative)
pub fn gcd(a: i64, b: i64) i64lcm
Least common multiple (zero if either side is zero)
pub fn lcm(a: i64, b: i64) i64is_nan
true for NaN values
pub fn is_nan(value: f64) boolis_nanf
true for NaN values (single precision)
pub fn is_nanf(value: f32) boolis_inf
true for infinite values
pub fn is_inf(value: f64) boolis_inff
true for infinite values (single precision)
pub fn is_inff(value: f32) boolstd.c.mathfabs / fabsf
pub extern fn fabs(x: f64) f64pub extern fn fabsf(x: f32) f32fmod / fmodf
pub extern fn fmod(x: f64, y: f64) f64pub extern fn fmodf(x: f32, y: f32) f32remainder / remainderf
pub extern fn remainder(x: f64, y: f64) f64pub extern fn remainderf(x: f32, y: f32) f32exp / expf
pub extern fn exp(x: f64) f64pub extern fn expf(x: f32) f32exp2 / exp2f
pub extern fn exp2(x: f64) f64pub extern fn exp2f(x: f32) f32expm1 / expm1f
pub extern fn expm1(x: f64) f64pub extern fn expm1f(x: f32) f32log / logf
pub extern fn log(x: f64) f64pub extern fn logf(x: f32) f32log10 / log10f
pub extern fn log10(x: f64) f64pub extern fn log10f(x: f32) f32log2 / log2f
pub extern fn log2(x: f64) f64pub extern fn log2f(x: f32) f32log1p / log1pf
pub extern fn log1p(x: f64) f64pub extern fn log1pf(x: f32) f32pow / powf
pub extern fn pow(x: f64, y: f64) f64pub extern fn powf(x: f32, y: f32) f32sqrt / sqrtf
pub extern fn sqrt(x: f64) f64pub extern fn sqrtf(x: f32) f32cbrt / cbrtf
pub extern fn cbrt(x: f64) f64pub extern fn cbrtf(x: f32) f32hypot / hypotf
pub extern fn hypot(x: f64, y: f64) f64pub extern fn hypotf(x: f32, y: f32) f32sin / sinf
pub extern fn sin(x: f64) f64pub extern fn sinf(x: f32) f32cos / cosf
pub extern fn cos(x: f64) f64pub extern fn cosf(x: f32) f32tan / tanf
pub extern fn tan(x: f64) f64pub extern fn tanf(x: f32) f32asin / asinf
pub extern fn asin(x: f64) f64pub extern fn asinf(x: f32) f32acos / acosf
pub extern fn acos(x: f64) f64pub extern fn acosf(x: f32) f32atan / atanf
pub extern fn atan(x: f64) f64pub extern fn atanf(x: f32) f32atan2 / atan2f
pub extern fn atan2(y: f64, x: f64) f64pub extern fn atan2f(y: f32, x: f32) f32sinh / sinhf
pub extern fn sinh(x: f64) f64pub extern fn sinhf(x: f32) f32cosh / coshf
pub extern fn cosh(x: f64) f64pub extern fn coshf(x: f32) f32tanh / tanhf
pub extern fn tanh(x: f64) f64pub extern fn tanhf(x: f32) f32asinh / asinhf
pub extern fn asinh(x: f64) f64pub extern fn asinhf(x: f32) f32acosh / acoshf
pub extern fn acosh(x: f64) f64pub extern fn acoshf(x: f32) f32atanh / atanhf
pub extern fn atanh(x: f64) f64pub extern fn atanhf(x: f32) f32erf / erff
pub extern fn erf(x: f64) f64pub extern fn erff(x: f32) f32erfc / erfcf
pub extern fn erfc(x: f64) f64pub extern fn erfcf(x: f32) f32tgamma / tgammaf
pub extern fn tgamma(x: f64) f64pub extern fn tgammaf(x: f32) f32lgamma / lgammaf
pub extern fn lgamma(x: f64) f64pub extern fn lgammaf(x: f32) f32ceil / ceilf
pub extern fn ceil(x: f64) f64pub extern fn ceilf(x: f32) f32floor / floorf
pub extern fn floor(x: f64) f64pub extern fn floorf(x: f32) f32round / roundf
pub extern fn round(x: f64) f64pub extern fn roundf(x: f32) f32trunc / truncf
pub extern fn trunc(x: f64) f64pub extern fn truncf(x: f32) f32lround / lroundf
pub extern fn lround(x: f64) c_longpub extern fn lroundf(x: f32) c_longllround / llroundf
pub extern fn llround(x: f64) c_longlongpub extern fn llroundf(x: f32) c_longlonglrint / lrintf
pub extern fn lrint(x: f64) c_longpub extern fn lrintf(x: f32) c_longllrint / llrintf
pub extern fn llrint(x: f64) c_longlongpub extern fn llrintf(x: f32) c_longlongldexp / ldexpf
pub extern fn ldexp(x: f64, exp: c_int) f64pub extern fn ldexpf(x: f32, exp: c_int) f32frexp / frexpf
pub extern fn frexp(x: f64, exp: *c_int) f64pub extern fn frexpf(x: f32, exp: *c_int) f32modf / modff
pub extern fn modf(x: f64, iptr: *f64) f64pub extern fn modff(x: f32, iptr: *f32) f32scalbn / scalbnf
pub extern fn scalbn(x: f64, n: c_int) f64pub extern fn scalbnf(x: f32, n: c_int) f32scalbln / scalblnf
pub extern fn scalbln(x: f64, n: c_long) f64pub extern fn scalblnf(x: f32, n: c_long) f32copysign / copysignf
pub extern fn copysign(x: f64, y: f64) f64pub extern fn copysignf(x: f32, y: f32) f32isnan / isnanf
pub extern fn isnan(x: f64) c_intpub extern fn isnanf(x: f32) c_intisinf / isinff
pub extern fn isinf(x: f64) c_intpub extern fn isinff(x: f32) c_intisfinite / isfinitef
pub extern fn isfinite(x: f64) c_intpub extern fn isfinitef(x: f32) c_intisgreater / isgreaterequal / isless / islessequal / islessgreater / isunordered
pub extern fn isgreater(x: f64, y: f64) c_intpub extern fn isgreaterequal(x: f64, y: f64) c_intpub extern fn isless(x: f64, y: f64) c_intpub extern fn islessequal(x: f64, y: f64) c_intpub extern fn islessgreater(x: f64, y: f64) c_intpub extern fn isunordered(x: f64, y: f64) c_intnextafter / nextafterf
pub extern fn nextafter(x: f64, y: f64) f64pub extern fn nextafterf(x: f32, y: f32) f32nexttoward / nexttowardf
pub extern fn nexttoward(x: f64, y: f64) f64pub extern fn nexttowardf(x: f32, y: f64) f32fma / fmaf
pub extern fn fma(x: f64, y: f64, z: f64) f64pub extern fn fmaf(x: f32, y: f32, z: f32) f32