Skip to content

Commit ae8dca0

Browse files
author
Hugo Levy-Falk
committed
Fix Tables.jl interface for Version 3 SPE Files.
1 parent 53ae685 commit ae8dca0

File tree

1 file changed

+7
-11
lines changed

1 file changed

+7
-11
lines changed

src/tables.jl

Lines changed: 7 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -48,17 +48,17 @@ function Tables.getcolumn(f::SPEFile{Version3, T}, nm::Symbol) where {T}
4848
repeat(col_num, n_frames)
4949
elseif nm == :exposurestarted
5050
size_one_frame = sum([l for l in length.(first(f.frames))])
51-
if ismissing(f.frameexposurestarted)
51+
if ismissing(f.metadata.frameexposurestarted)
5252
repeat([missing], size_one_frame*length(f.frames))
5353
else
54-
vcat([repeat([e], size_one_frame) for e in f.frameexposurestarted]...)
54+
vcat([repeat([e], size_one_frame) for e in f.metadata.frameexposurestarted]...)
5555
end
5656
elseif nm == :exposureended
5757
size_one_frame = sum([l for l in length.(first(f.frames))])
58-
if ismissing(f.frameexposureended)
58+
if ismissing(f.metadata.frameexposureended)
5959
repeat([missing], size_one_frame*length(f.frames))
6060
else
61-
vcat([repeat([e], size_one_frame) for e in f.frameexposureended]...)
61+
vcat([repeat([e], size_one_frame) for e in f.metadata.frameexposureended]...)
6262
end
6363
else
6464
throw(ArgumentError("Column $nm does not exist for a SPEFile v3."))
@@ -98,14 +98,10 @@ Tables.columnnames(::SPEFile{Version2, T}) where {T} = COLUMNS_V2
9898
Tables.columnnames(::SPEFile{Version3, T}) where {T} = COLUMNS_V3
9999

100100
function Base.getproperty(f::T, sym::Symbol) where {T<:SPEFile}
101-
try
101+
if hasfield(T, sym)
102+
getfield(f, sym)
103+
else
102104
Tables.getcolumn(f, sym)
103-
catch e
104-
if e isa ArgumentError
105-
getfield(f, sym)
106-
else
107-
rethrow(e)
108-
end
109105
end
110106
end
111107

0 commit comments

Comments
 (0)