In performance tips, it says

Essentially, Val{T}works only when T is either hard-coded (Val{3}) or 
already specified in the type-domain.

Suppose I have

ff(::Type{Val{1}}) = 1

I guess the following is on a slower route.

x = 1
a = ff(::Type{Val{x}})

And maybe this one can be determined in compile time

const y = 1
a = ff(::Type{Val{y}})

How can I tell if it is fast or slow? @code_warntype doesn't tell the 
difference here?

Reply via email to