It compiles with function that takes mutable struct Position

the magic is in the arg   &mut Position 

read as "reference to mutable Position"

You still need to pop in those sublime settings I gave you. Life gets better when your editor auto removes trailing whitespace and autoinserts trailing carriage returns.