Advertisement
Guest User

Untitled

a guest
Jan 6th, 2020
99
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Julia 0.28 KB | None | 0 0
  1. @generated function (σ::Sym)(X::Arg...)
  2.     x = all(T <: ℇ for T ∈ X) ? (:(X...),) :
  3.         Tuple(X[i] <: ℇ ? :(X[$i]) : :((X[$i])) for i ∈ 1:length(X))
  4.     quote
  5.         ℯ = ℇ(σ, $(x...))
  6.         ℯ isa{NoSort} ? throw(ArgumentError("$ℯ violates signature")) : ℯ
  7.     end
  8. end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement