Skip to content

Commit ba27db3

Browse files
committed
Fix a bug in anonymous functions’ type annotations
We cannot write anonymous functions with return type, because it will cause parsing ambiguity. See JuliaLang/julia#23072.
1 parent 2df8fc0 commit ba27db3

File tree

1 file changed

+12
-12
lines changed

1 file changed

+12
-12
lines changed

src/EoS.jl

+12-12
Original file line numberDiff line numberDiff line change
@@ -53,7 +53,7 @@ end
5353
function eval_energy(eos::Birch)::Function
5454
v0, b0, bp0 = eos.parameters
5555

56-
function (v::Float64, f0::Float64=0)::Float64
56+
function (v::Float64, f0::Float64=0)
5757
x = (v0 / v)^(2 / 3) - 1
5858
xi = 9 / 16 * b0 * v0 * x^2
5959
return f0 + 2 * xi + (bp0 - 4) * xi * x
@@ -63,7 +63,7 @@ end
6363
function eval_pressure(eos::Birch)::Function
6464
v0, b0, bp0 = eos.parameters
6565

66-
function (v::Float64)::Float64
66+
function (v::Float64)
6767
x = v0 / v
6868
xi = x^(2 / 3) - 1
6969
return 3 / 8 * b0 * x^(5 / 3) * xi * (4 + 3 * (bp0 - 4) * xi)
@@ -73,7 +73,7 @@ end
7373
function eval_energy(eos::Murnaghan)::Function
7474
v0, b0, bp0 = eos.parameters
7575

76-
function (v::Float64, f0::Float64=0)::Float64
76+
function (v::Float64, f0::Float64=0)
7777
x = bp0 - 1
7878
y = (v0 / v)^bp0
7979
return f0 + b0 / bp0 * v * (y / x + 1) - v0 * b0 / x
@@ -83,15 +83,15 @@ end
8383
function eval_pressure(eos::Murnaghan)::Function
8484
v0, b0, bp0 = eos.parameters
8585

86-
function (v::Float64)::Float64
86+
function (v::Float64)
8787
return b0 / bp0 * ((v0 / v)^bp0 - 1)
8888
end
8989
end
9090

9191
function eval_energy(eos::BirchMurnaghan2nd)::Function
9292
v0, b0 = eos.parameters
9393

94-
function (v::Float64, f0::Float64=0)::Float64
94+
function (v::Float64, f0::Float64=0)
9595
f = ((v0 / v)^(2 / 3) - 1) / 2
9696
return f0 + 9 / 2 * b0 * v0 * f^2
9797
end
@@ -100,7 +100,7 @@ end
100100
function eval_pressure(eos::BirchMurnaghan2nd)::Function
101101
v0, b0 = eos.parameters
102102

103-
function (v::Float64)::Float64
103+
function (v::Float64)
104104
f = ((v0 / v)^(2 / 3) - 1) / 2
105105
return 3 * b0 * f * (1 + 2 * f)^(5 / 2)
106106
end
@@ -109,7 +109,7 @@ end
109109
function eval_energy(eos::BirchMurnaghan3rd)::Function
110110
v0, b0, bp0 = eos.parameters
111111

112-
function (v::Float64, f0::Float64=0)::Float64
112+
function (v::Float64, f0::Float64=0)
113113
eta = (v0 / v)^(1 / 3)
114114
xi = eta^2 - 1
115115
return f0 + 9 / 16 * b0 * v0 * xi^2 * (6 + bp0 * xi - 4 * eta^2)
@@ -119,7 +119,7 @@ end
119119
function eval_pressure(eos::BirchMurnaghan3rd)::Function
120120
v0, b0, bp0 = eos.parameters
121121

122-
function (v::Float64)::Float64
122+
function (v::Float64)
123123
eta = (v0 / v)^(1 / 3)
124124
return 3 / 2 * b0 * (eta^7 - eta^5) * (1 + 3 / 4 * (bp0 - 4) * (eta^2 - 1))
125125
end
@@ -128,7 +128,7 @@ end
128128
function eval_energy(eos::BirchMurnaghan4th)::Function
129129
v0, b0, bp0, bpp0 = eos.parameters
130130

131-
function (v::Float64, f0::Float64=0)::Float64
131+
function (v::Float64, f0::Float64=0)
132132
f = ((v0 / v)^(2 / 3) - 1) / 2
133133
h = b0 * bpp0 + bp0^2
134134
return f0 + 3 / 8 * v0 * b0 * f^2 * ((9 * h - 63 * bp0 + 143) * f^2 + 12 * (bp0 - 4) * f + 12)
@@ -138,7 +138,7 @@ end
138138
function eval_pressure(eos::BirchMurnaghan4th)::Function
139139
v0, b0, bp0, bpp0 = eos.parameters
140140

141-
function (v::Float64)::Float64
141+
function (v::Float64)
142142
f = ((v0 / v)^(2 / 3) - 1) / 2
143143
h = b0 * bpp0 + bp0^2
144144
return 1 / 2 * b0 * (2 * f + 1)^(5 / 2) * ((9 * h - 63 * bp0 + 143) * f^2 + 9 * (bp0 - 4) * f + 6)
@@ -148,7 +148,7 @@ end
148148
function eval_energy(eos::Vinet)::Function
149149
v0, b0, bp0 = eos.parameters
150150

151-
function (v::Float64, f0::Float64=0)::Float64
151+
function (v::Float64, f0::Float64=0)
152152
x = (v / v0)^(1 / 3)
153153
xi = 3 / 2 * (bp0 - 1)
154154
return f0 + 9 * b0 * v0 / xi^2 * (1 + (xi * (1 - x) - 1) * np.exp(xi * (1 - x)))
@@ -158,7 +158,7 @@ end
158158
function eval_pressure(eos::Vinet)::Function
159159
v0, b0, bp0 = eos.parameters
160160

161-
function (v::Float64)::Float64
161+
function (v::Float64)
162162
x = (v / v0)^(1 / 3)
163163
xi = 3 / 2 * (bp0 - 1)
164164
return 3 * b0 / x^2 * (1 - x) * np.exp(xi * (1 - x))

0 commit comments

Comments
 (0)