title: "Incomplete" Equatable implementation (Swift)
body: <p>Is it a good idea to implement the <code>Equatable</code> protocol for a Swift struct in a way to compare only ID-s (which is supposed to be unique) and ignore the rest of the properties? What are drawbacks of this approach?</p>
  
  <pre><code>struct Person {
  
      let id: String
      let name: String
      var surname: String
  }
  
  extension Person: Equatable {
  
      static func ==(lhs: Person, rhs: Person) -&gt; Bool {
          return lhs.id == rhs.id
      }
  }
  </code></pre>