use * for pointer type instead of &
See #770 To help automatically translate code, see the zig-fmt-pointer-reform-2 branch. This will convert all & into *. Due to the syntax ambiguity (which is why we are making this change), even address-of & will turn into *, so you'll have to manually fix thes instances. You will be guaranteed to get compile errors for them - expected 'type', found 'foo'
This commit is contained in:
@@ -29,7 +29,7 @@ fn redupif32(x: f32) f32 {
|
||||
return ((x - u * DP1) - u * DP2) - t * DP3;
|
||||
}
|
||||
|
||||
fn atan32(z: &const Complex(f32)) Complex(f32) {
|
||||
fn atan32(z: *const Complex(f32)) Complex(f32) {
|
||||
const maxnum = 1.0e38;
|
||||
|
||||
const x = z.re;
|
||||
@@ -78,7 +78,7 @@ fn redupif64(x: f64) f64 {
|
||||
return ((x - u * DP1) - u * DP2) - t * DP3;
|
||||
}
|
||||
|
||||
fn atan64(z: &const Complex(f64)) Complex(f64) {
|
||||
fn atan64(z: *const Complex(f64)) Complex(f64) {
|
||||
const maxnum = 1.0e308;
|
||||
|
||||
const x = z.re;
|
||||
|
||||
@@ -15,7 +15,7 @@ pub fn cosh(z: var) Complex(@typeOf(z.re)) {
|
||||
};
|
||||
}
|
||||
|
||||
fn cosh32(z: &const Complex(f32)) Complex(f32) {
|
||||
fn cosh32(z: *const Complex(f32)) Complex(f32) {
|
||||
const x = z.re;
|
||||
const y = z.im;
|
||||
|
||||
@@ -78,7 +78,7 @@ fn cosh32(z: &const Complex(f32)) Complex(f32) {
|
||||
return Complex(f32).new((x * x) * (y - y), (x + x) * (y - y));
|
||||
}
|
||||
|
||||
fn cosh64(z: &const Complex(f64)) Complex(f64) {
|
||||
fn cosh64(z: *const Complex(f64)) Complex(f64) {
|
||||
const x = z.re;
|
||||
const y = z.im;
|
||||
|
||||
|
||||
@@ -16,7 +16,7 @@ pub fn exp(z: var) Complex(@typeOf(z.re)) {
|
||||
};
|
||||
}
|
||||
|
||||
fn exp32(z: &const Complex(f32)) Complex(f32) {
|
||||
fn exp32(z: *const Complex(f32)) Complex(f32) {
|
||||
@setFloatMode(this, @import("builtin").FloatMode.Strict);
|
||||
|
||||
const exp_overflow = 0x42b17218; // max_exp * ln2 ~= 88.72283955
|
||||
@@ -63,7 +63,7 @@ fn exp32(z: &const Complex(f32)) Complex(f32) {
|
||||
}
|
||||
}
|
||||
|
||||
fn exp64(z: &const Complex(f64)) Complex(f64) {
|
||||
fn exp64(z: *const Complex(f64)) Complex(f64) {
|
||||
const exp_overflow = 0x40862e42; // high bits of max_exp * ln2 ~= 710
|
||||
const cexp_overflow = 0x4096b8e4; // (max_exp - min_denorm_exp) * ln2
|
||||
|
||||
|
||||
@@ -37,28 +37,28 @@ pub fn Complex(comptime T: type) type {
|
||||
};
|
||||
}
|
||||
|
||||
pub fn add(self: &const Self, other: &const Self) Self {
|
||||
pub fn add(self: *const Self, other: *const Self) Self {
|
||||
return Self{
|
||||
.re = self.re + other.re,
|
||||
.im = self.im + other.im,
|
||||
};
|
||||
}
|
||||
|
||||
pub fn sub(self: &const Self, other: &const Self) Self {
|
||||
pub fn sub(self: *const Self, other: *const Self) Self {
|
||||
return Self{
|
||||
.re = self.re - other.re,
|
||||
.im = self.im - other.im,
|
||||
};
|
||||
}
|
||||
|
||||
pub fn mul(self: &const Self, other: &const Self) Self {
|
||||
pub fn mul(self: *const Self, other: *const Self) Self {
|
||||
return Self{
|
||||
.re = self.re * other.re - self.im * other.im,
|
||||
.im = self.im * other.re + self.re * other.im,
|
||||
};
|
||||
}
|
||||
|
||||
pub fn div(self: &const Self, other: &const Self) Self {
|
||||
pub fn div(self: *const Self, other: *const Self) Self {
|
||||
const re_num = self.re * other.re + self.im * other.im;
|
||||
const im_num = self.im * other.re - self.re * other.im;
|
||||
const den = other.re * other.re + other.im * other.im;
|
||||
@@ -69,14 +69,14 @@ pub fn Complex(comptime T: type) type {
|
||||
};
|
||||
}
|
||||
|
||||
pub fn conjugate(self: &const Self) Self {
|
||||
pub fn conjugate(self: *const Self) Self {
|
||||
return Self{
|
||||
.re = self.re,
|
||||
.im = -self.im,
|
||||
};
|
||||
}
|
||||
|
||||
pub fn reciprocal(self: &const Self) Self {
|
||||
pub fn reciprocal(self: *const Self) Self {
|
||||
const m = self.re * self.re + self.im * self.im;
|
||||
return Self{
|
||||
.re = self.re / m,
|
||||
@@ -84,7 +84,7 @@ pub fn Complex(comptime T: type) type {
|
||||
};
|
||||
}
|
||||
|
||||
pub fn magnitude(self: &const Self) T {
|
||||
pub fn magnitude(self: *const Self) T {
|
||||
return math.sqrt(self.re * self.re + self.im * self.im);
|
||||
}
|
||||
};
|
||||
|
||||
@@ -14,7 +14,7 @@ pub fn ldexp_cexp(z: var, expt: i32) Complex(@typeOf(z.re)) {
|
||||
};
|
||||
}
|
||||
|
||||
fn frexp_exp32(x: f32, expt: &i32) f32 {
|
||||
fn frexp_exp32(x: f32, expt: *i32) f32 {
|
||||
const k = 235; // reduction constant
|
||||
const kln2 = 162.88958740; // k * ln2
|
||||
|
||||
@@ -24,7 +24,7 @@ fn frexp_exp32(x: f32, expt: &i32) f32 {
|
||||
return @bitCast(f32, (hx & 0x7fffff) | ((0x7f + 127) << 23));
|
||||
}
|
||||
|
||||
fn ldexp_cexp32(z: &const Complex(f32), expt: i32) Complex(f32) {
|
||||
fn ldexp_cexp32(z: *const Complex(f32), expt: i32) Complex(f32) {
|
||||
var ex_expt: i32 = undefined;
|
||||
const exp_x = frexp_exp32(z.re, &ex_expt);
|
||||
const exptf = expt + ex_expt;
|
||||
@@ -38,7 +38,7 @@ fn ldexp_cexp32(z: &const Complex(f32), expt: i32) Complex(f32) {
|
||||
return Complex(f32).new(math.cos(z.im) * exp_x * scale1 * scale2, math.sin(z.im) * exp_x * scale1 * scale2);
|
||||
}
|
||||
|
||||
fn frexp_exp64(x: f64, expt: &i32) f64 {
|
||||
fn frexp_exp64(x: f64, expt: *i32) f64 {
|
||||
const k = 1799; // reduction constant
|
||||
const kln2 = 1246.97177782734161156; // k * ln2
|
||||
|
||||
@@ -54,7 +54,7 @@ fn frexp_exp64(x: f64, expt: &i32) f64 {
|
||||
return @bitCast(f64, (u64(high_word) << 32) | lx);
|
||||
}
|
||||
|
||||
fn ldexp_cexp64(z: &const Complex(f64), expt: i32) Complex(f64) {
|
||||
fn ldexp_cexp64(z: *const Complex(f64), expt: i32) Complex(f64) {
|
||||
var ex_expt: i32 = undefined;
|
||||
const exp_x = frexp_exp64(z.re, &ex_expt);
|
||||
const exptf = i64(expt + ex_expt);
|
||||
|
||||
@@ -4,7 +4,7 @@ const math = std.math;
|
||||
const cmath = math.complex;
|
||||
const Complex = cmath.Complex;
|
||||
|
||||
pub fn pow(comptime T: type, z: &const T, c: &const T) T {
|
||||
pub fn pow(comptime T: type, z: *const T, c: *const T) T {
|
||||
const p = cmath.log(z);
|
||||
const q = c.mul(p);
|
||||
return cmath.exp(q);
|
||||
|
||||
@@ -15,7 +15,7 @@ pub fn sinh(z: var) Complex(@typeOf(z.re)) {
|
||||
};
|
||||
}
|
||||
|
||||
fn sinh32(z: &const Complex(f32)) Complex(f32) {
|
||||
fn sinh32(z: *const Complex(f32)) Complex(f32) {
|
||||
const x = z.re;
|
||||
const y = z.im;
|
||||
|
||||
@@ -78,7 +78,7 @@ fn sinh32(z: &const Complex(f32)) Complex(f32) {
|
||||
return Complex(f32).new((x * x) * (y - y), (x + x) * (y - y));
|
||||
}
|
||||
|
||||
fn sinh64(z: &const Complex(f64)) Complex(f64) {
|
||||
fn sinh64(z: *const Complex(f64)) Complex(f64) {
|
||||
const x = z.re;
|
||||
const y = z.im;
|
||||
|
||||
|
||||
@@ -15,7 +15,7 @@ pub fn sqrt(z: var) Complex(@typeOf(z.re)) {
|
||||
};
|
||||
}
|
||||
|
||||
fn sqrt32(z: &const Complex(f32)) Complex(f32) {
|
||||
fn sqrt32(z: *const Complex(f32)) Complex(f32) {
|
||||
const x = z.re;
|
||||
const y = z.im;
|
||||
|
||||
@@ -57,7 +57,7 @@ fn sqrt32(z: &const Complex(f32)) Complex(f32) {
|
||||
}
|
||||
}
|
||||
|
||||
fn sqrt64(z: &const Complex(f64)) Complex(f64) {
|
||||
fn sqrt64(z: *const Complex(f64)) Complex(f64) {
|
||||
// may encounter overflow for im,re >= DBL_MAX / (1 + sqrt(2))
|
||||
const threshold = 0x1.a827999fcef32p+1022;
|
||||
|
||||
|
||||
@@ -13,7 +13,7 @@ pub fn tanh(z: var) Complex(@typeOf(z.re)) {
|
||||
};
|
||||
}
|
||||
|
||||
fn tanh32(z: &const Complex(f32)) Complex(f32) {
|
||||
fn tanh32(z: *const Complex(f32)) Complex(f32) {
|
||||
const x = z.re;
|
||||
const y = z.im;
|
||||
|
||||
@@ -51,7 +51,7 @@ fn tanh32(z: &const Complex(f32)) Complex(f32) {
|
||||
return Complex(f32).new((beta * rho * s) / den, t / den);
|
||||
}
|
||||
|
||||
fn tanh64(z: &const Complex(f64)) Complex(f64) {
|
||||
fn tanh64(z: *const Complex(f64)) Complex(f64) {
|
||||
const x = z.re;
|
||||
const y = z.im;
|
||||
|
||||
|
||||
Reference in New Issue
Block a user