Hi, I’m trying to figure out whether its possible to write a signature for a function f(x, y) such that y can be converted to x via convert. Actually it is a bit simpler: I want to constraint x and y to be both either <:SMatrix{N,N} with the same N or both <:Number.
I could of course write
f(x::Number, y::Number) = ...
f(x::SMatrix{N,N}, y::SMatrix{N,N}) where {N} = ...
but then I would need to write the same code twice (both methods are identical). In order to follow DRY I would like to write a single signature that picks both cases. Is it possible? (Note that making both x and y ::Union{Number, SMatrix{N,N}} doesn’t work, as it doesn’t exclude the case of having one Number and one SMatrix).