Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- @generated function (σ::Sym)(X::Arg...)
- x = all(T <: ℇ for T ∈ X) ? (:(X...),) :
- Tuple(X[i] <: ℇ ? :(X[$i]) : :(ℇ(X[$i])) for i ∈ 1:length(X))
- quote
- ℯ = ℇ(σ, $(x...))
- ℯ isa ℇ{NoSort} ? throw(ArgumentError("$ℯ violates signature")) : ℯ
- end
- end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement