Cannot convert value of type to expected argument type
<p>So I'm converting this line of code</p>

<pre><code> NSPredicate *predicate = [NSPredicate predicateWithBlock:^BOOL(TidyFeed * _Nonnull item, NSDictionary&lt;NSString *,id&gt; * _Nullable bindings) {
        return ![item.feedEntryId isEqualToString:feedEntryId];
    }];
</code></pre>

<p>to swift code</p>

<pre><code>var predicate = NSPredicate { (item: TidyFeed, bindings: NSDictionary) in
        return !(item.feedEntryId == feedEntryId)
    }
</code></pre>

<p>but I get this error </p>

<blockquote>
  <p>Cannot convert value of type '(TidyFeed, NSDictionary) -> Bool' to expected argument type '(AnyObject, [String : AnyObject]?) -> Bool'</p>
</blockquote>

<p>has anyone encounter this error when using blocks?</p>

<p><strong>Additional Info</strong></p>

<p>Swift code</p>

<pre><code>  apiClient.dismissFeed(feedEntryId, completion: {(responseObject: AnyObject, error: NSError) -&gt; Void in

    })
</code></pre>

<p>Error</p>

<blockquote>
  <p>Cannot convert value of type '(AnyObject, NSError) -> Void' to expected argument type 'AFAPIOperationCompletionBlock!'</p>
</blockquote>

<p>and here's the completion block code of <strong>AFAPIOperationCompletionBlock</strong></p>

<pre><code>- (void) completion:(id)responseObject error:(NSError *)error 
</code></pre>