In Swift, structures (and enumerations) are value types. By default, the properties of a value type cannot be modified within its instance methods. However, there are scenarios where you might want to modify the properties of a structure within its instance methods. To facilitate this, Swift provides the mutating keyword.