julia> abstract type Atype{Q} end
julia> Atype{Int}
Atype{Int64}
However I want Atype{Int} to produce Union{Atype{Int64}, Atype{Number}, Atype{Signed}}
So is there way that I can programmatically intervene in the generation of a type?
Thanks
julia> abstract type Atype{Q} end
julia> Atype{Int}
Atype{Int64}
However I want Atype{Int} to produce Union{Atype{Int64}, Atype{Number}, Atype{Signed}}
So is there way that I can programmatically intervene in the generation of a type?
Thanks
Atype{<:Number}
?
nice But I want to go from Int → all this was a specific example.
Core.apply_type is called whenever a UnionAll is given parameters to be specialized. However we are not allowed to add a method to apply_type function since it is a builtin. Is there a way to intercept apply_type?
No that’s not possible.
What do you want? If you just want a short syntax to generate types, use a function. If you want dispatch to work on it then no you are not allowed to do that.