Skip to content

Commit efc2f86

Browse files
authored
Merge pull request #636 from JuliaDiff/ox/zero_getprop
Define getproperty on AbstractZeroTangents
2 parents ef8905b + 5066406 commit efc2f86

File tree

3 files changed

+6
-1
lines changed

3 files changed

+6
-1
lines changed

Project.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
name = "ChainRulesCore"
22
uuid = "d360d2e6-b24c-11e9-a2a3-2a2ae2dbcce4"
3-
version = "1.16.0"
3+
version = "1.17.0"
44

55
[deps]
66
Compat = "34da2185-b29b-5c13-b0c7-acf172513d20"

src/tangent_types/abstract_zero.jl

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -35,6 +35,8 @@ Base.convert(::Type{T}, x::AbstractZero) where {T<:Number} = zero(T)
3535
(::Type{Complex})(x::Real, y::AbstractZero) = Complex(x, false)
3636

3737
Base.getindex(z::AbstractZero, args...) = z
38+
Base.getproperty(z::AbstractZero, name::Symbol) = z
39+
3840

3941
Base.view(z::AbstractZero, ind...) = z
4042
Base.sum(z::AbstractZero; dims=:) = z

test/tangent_types/abstract_zero.jl

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -86,6 +86,8 @@
8686
@test z[1:3] === z
8787
@test z[1, 2] === z
8888
@test getindex(z) === z
89+
90+
@test z.foo === z
8991

9092
@test first(z) === z
9193
@test last(z) === z
@@ -134,6 +136,7 @@
134136
@test dne[1:3] === dne
135137
@test dne[1, 2] === dne
136138
@test getindex(dne) === dne
139+
@test dne.foo === dne
137140
end
138141

139142
@testset "ambiguities" begin

0 commit comments

Comments
 (0)