Skip to content

Commit

Permalink
removed unnecessary files, fixed bug after new version of ComponentAr…
Browse files Browse the repository at this point in the history
…rays
  • Loading branch information
vboussange committed Nov 14, 2023
1 parent 33dd565 commit 0e75f7b
Show file tree
Hide file tree
Showing 4 changed files with 27 additions and 123 deletions.
2 changes: 1 addition & 1 deletion Project.toml
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
name = "ParametricModels"
uuid = "ea05b012-1b06-4aec-a786-2a545e229cd0"
authors = ["Victor Boussange"]
version = "0.3.4"
version = "0.3.5"

[deps]
ComponentArrays = "b0b7db55-cfe3-40fc-9ded-d10e2dbeff66"
Expand Down
51 changes: 0 additions & 51 deletions src/composable_model.jl

This file was deleted.

28 changes: 26 additions & 2 deletions src/models.jl
Original file line number Diff line number Diff line change
Expand Up @@ -7,14 +7,38 @@ function Base.merge(ca::ComponentArray{T}, ca2::ComponentArray{T2}) where {T, T2
_p = Vector{T}()
for vk in vks
if vk in vks2
_p = vcat(_p, reshape(ca2[vk], :))
_vec = vec(getproperty(ca2, vk)) # ca2[vk]
_p = vcat(_p, _vec)
else
_p = vcat(_p, reshape(ca[vk], :))
_vec = vec(getproperty(ca, vk)) # ca1[vk]
_p = vcat(_p, _vec)
end
end
ComponentArray(_p, ax)
end

Base.merge(::Nothing, ca2::ComponentArray{T2}) where {T2} = ca2


# This piece is inspired from https://github.com/jonniedie/ComponentArrays.jl/pull/217
# import ComponentArrays: promote_type, getval, Val, indexmap
# @generated function valkeys(ax::AbstractAxis)
# idxmap = indexmap(ax)
# k = Val.(keys(idxmap))
# return :($k)
# end
# valkeys(ca::ComponentVector) = valkeys(getaxes(ca)[1])

# function merge(cvec1::ComponentVector{T1}, cvec2::ComponentVector{T2}) where {T1, T2}
# typed_dict = ComponentVector{promote_type(T1, T2)}(cvec1)
# for key in valkeys(cvec2)
# keyname = getval(key)
# val = cvec2[key]
# typed_dict = eval(:( ComponentArray($typed_dict, $keyname = $val) ))
# end
# typed_dict
# end

abstract type AbstractModel end
name(m::AbstractModel) = string(nameof(typeof(m)))
Base.show(io::IO, cm::AbstractModel) = println(io, "`Model` ", name(cm))
Expand Down
69 changes: 0 additions & 69 deletions test/composable_model.jl

This file was deleted.

0 comments on commit 0e75f7b

Please sign in to comment.