title: Swift 2.0 Method cannot be marked @objc because the type of the parameter cannot be represented in Objective-C
body: <p>After I have updated Swift 1 to Swift 2.0 I have an issue.</p>
  
  <p>I am getting the following error on the first line of this code:</p>
  
  <blockquote>
    <p>Method cannot be marked @objc because the type of the parameter cannot be represented in Objective-C</p>
  </blockquote>
  
  <pre><code>@objc func personsToFirstStep(persons: [Person]) {
      for person in persons {
          if !self.persons.contains(person) &amp;&amp; person.id != userID {
              self.persons.append(person)
          }
      }
  
      collectionView.reloadData()
      collectionViewPlaceholder.hidden = true
      collectionView.hidden = false
      collectionGradientView.hidden = false
  } 
  </code></pre>
  
  <p>This this Person class: </p>
  
  <pre><code>class Person: Hashable {
  
      var intID: Int = 0
      var id: String = ""
      var name: String = ""
      var type: String = ""
  
      var hashValue: Int {
          return self.intID
      }
  
      init(id: String, name: String, type: String) {
          self.id = id
          self.intID = Int(id)!
          self.name = name
          self.type = type
      }
  
  }
  
  func ==(lhs: Person, rhs: Person) -&gt; Bool {
      return lhs.intID == rhs.intID
  }
  </code></pre>