diff --git a/Project.toml b/Project.toml index f5fe3ce5..88dd0ac3 100644 --- a/Project.toml +++ b/Project.toml @@ -1,7 +1,7 @@ name = "Vulkan" uuid = "9f14b124-c50e-4008-a7d4-969b3a6cd68a" authors = ["Cédric Belmant"] -version = "0.6.12" +version = "0.6.13" [deps] Accessors = "7d9f7c33-5ae7-4f3b-8dc6-eff91059b697" diff --git a/src/prewrap/pointers.jl b/src/prewrap/pointers.jl index e3d013b8..e0b4bae0 100644 --- a/src/prewrap/pointers.jl +++ b/src/prewrap/pointers.jl @@ -16,8 +16,14 @@ Base.cconvert(T::Type{<:Ptr}, x::AbstractVector{<:VulkanStruct{false}}) = cconve Base.cconvert(T::Type{<:Ptr}, x::AbstractVector{<:VulkanStruct{true}}) = cconvert(T, x) Base.cconvert(T::Type{<:Ptr}, x::AbstractVector{<:HighLevelStruct}) = cconvert(T, x) -# Shadow the otherwise more specific Base -# method `cconvert(::Type{Ptr{P<:Union{Cstring,Cwstring,Ptr}}}, ::Array)`. +# Shadow the otherwise more specific Base method +# `cconvert(::Type{<:Ptr}, ::Array)`. +Base.cconvert(T::Type{<:Ptr}, x::Vector{<:VulkanStruct{false}}) = cconvert(T, x) +Base.cconvert(T::Type{<:Ptr}, x::Vector{<:VulkanStruct{true}}) = cconvert(T, x) +Base.cconvert(T::Type{<:Ptr}, x::Vector{<:HighLevelStruct}) = cconvert(T, x) + +# Shadow the otherwise more specific Base method +# `cconvert(::Type{Ptr{P<:Union{Cstring,Cwstring,Ptr}}}, ::Array)`. Base.cconvert(T::Type{Ptr{P}}, x::Vector{<:VulkanStruct{false}}) where {P<:Ptr} = cconvert(T, x) Base.cconvert(T::Type{Ptr{P}}, x::Vector{<:VulkanStruct{true}}) where {P<:Ptr} = cconvert(T, x) Base.cconvert(T::Type{Ptr{P}}, x::Vector{<:HighLevelStruct}) where {P<:Ptr} = cconvert(T, x)