This only work for Internal types?
Var works for any type of variable.
but a defined Type was passed by pointer already (ie already by Var ish).
Your partly right, except that the address of the variable itself is passed to a Var parameter, instead of its contents (ie the type reference).