Say I have something like
type MyType{T}
a::T
b::Vector{T}
c::Vector{Vector{T}}
d::Vector{Matrix{T}}
end
MyType(3, [3, 3], Vector{Int64}[[3,3], [4,4]], Matrix{Int64}[[3 1],[1 3]])
MyType(3, [3, 3], Vector[[3,3], [4,4]], Matrix[[3 1],[1 3]])
The first call to the MyType constuctor will work, but the second one will
not, because the Vector[...] and Matrix[...]'s are not told that they are
only going to contain arrays of integers.
Say I want to provide users with a type such as MyType, but I don't want
them to write {Float64} or {Int64} all the time. What is the best way to
allow the second call to MyType?
Patrick