我有一个自定义类型,我认为广播语法是有意义的;本质上只是一个具有不同语义的浮点数的包装器:
struct Foo{T<:AbstractFloat} <: AbstractFloat
content::T
end
通常会使用为某些函数提供的重载来操作,例如Base.:+
,保留语义,但我还想允许使用任意函数直接使用内部值 - 因此广播。
如何为这种自定义类型实现常规广播,包含任意多个参数,包括标量?是否记录在任何地方?我查看了ApproxFun.jl和Nullables.jl的相关代码,但无法确定要做什么。它们包含很多样式和类型规范,但实际的broadcast
重载对我来说并不是很容易理解。