I am confused on the difference between var and let for reference type in swift.
In the code below, let head is assigned to var current:
public class