Open heyx3 opened 11 months ago
This macro removes types from a function declaration so that there's no risk of other overloads being seen as less specific by Julia's overload resolution.
Examples:
@fprototype do_thing(t::AbstractMyType, data::T)::Tuple{T, Int} = error()
do_thing(t, data) = error()
@fprototype do_thing(t::AbstractMyType)
function do_thing end
This macro removes types from a function declaration so that there's no risk of other overloads being seen as less specific by Julia's overload resolution.
Examples:
@fprototype do_thing(t::AbstractMyType, data::T)::Tuple{T, Int} = error()
turns intodo_thing(t, data) = error()
@fprototype do_thing(t::AbstractMyType)
turns intofunction do_thing end