Dot notation just accesses a property/method on the specific object you use it on. Whether that modification edits another object somewhere else is depended on if that object is a class or struct, and where it came from. I.e. all in same scope, or passed in as a param of a method etc.
Correct, because they are two separte objects since it was a struct it got passed by copy, not reference. If it were a class, then it would have been passed by reference and would have been the same object.
Read through Carcin a few times. Iām hoping itāll make things more clear on whatās going on for you.
Again i canāt stress it enough that dot notation just edits a specific object, what the side effects are from doing that stem from whether the object as a struct or a class. As demonstrated in the playground link.